首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

jsp 中为啥修改不了个人信息

2013-03-12 
jsp 中为什么修改不了个人信息啊jsp 中为什么修改不了个人信息啊在线等啊 啊%@ page languagejava con

jsp 中为什么修改不了个人信息啊

jsp 中为什么修改不了个人信息啊
在线等啊 啊

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ page import="java.sql.*"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<% int flag=0; %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>修改个人信息</title>


<script language="javascript">
function back()
{
document.form.action="login_success.jsp";
return true;
}

function handle()
{
<% flag=5;%>
return true;
}
function fresh()
{
document.form.action="changeinfo.jsp";
<%flag=6;%>
return true;
}
</script>

</head>
<body>
<%
String name="";
Object obj=session.getAttribute("UserName");
if(obj!=null)
name=obj.toString();

%>
<div align="left">

<table border="1" width="25%" height="10" cellspacing="0" cellpadding="0">

<tr>
<td align="center">
<h3><br>
<b><font color="black" size="5">修改个人信息</font></b>
</h3> 
</td>
</tr>
</table>
<%  //链接数据库获取用户信息

Statement stmt=null;
ResultSet rs1=null;

try{
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/mysql","root","123");
String sql="select * from UserInfo where UserName= '"+name+"'";
//out.print(name);

stmt=conn.createStatement();
rs1=stmt.executeQuery(sql);
while(rs1.next())
{
%>
<br><%-- --%>
<font size="4" color="blue" >用户名:  <font color="red"><input type="text" name="username" ></font></font>
<font size="2" color="red">*用户名不能修改</font> <br>
<font size="4" color="blue" >密码: <input type="password" name="txtPassword" size="20" maxlength="20" value="<%=rs1.getString("PassWord") %>">
<font size="2" color="red">*(3-20位)</font> <br>
<font size="4" color="blue" >性别:  <select size="1" id="sltGender">
<option value="0">女</option>
<option value="1">男</option></select><br>
<font size="4" color="blue" >电话: <font color="red"> <input type="txt" name="txtTel" size="20" maxlength="20" value="<%=rs1.getString("Phone") %>"></font></font><br>

<font size="4" color="blue" >邮件:  <font color="red">
<input type="text" name="txtEmail" size="20" maxlength="30" value="<%=rs1.getString("E_mail") %>"></font></font><br>
<% 


}%>

<form name="form" method="post" >

<input type="submit" name="submit" value="修改" onclick="return handle();">
<input type="submit" name="submit" value="取消" onclick="return fresh();">


<input type="submit" name="submit" value="返回" onclick="return back();"> <!--onclick="window.open('login_success.jsp');"新弹出一个窗口-->

</form>

<%
String temp=request.getParameter("username");
out.print(temp);

if(temp!=null)  //执行更新操作
{
out.print(temp);
rs1=stmt.executeQuery(sql);
rs1.next();
//String nametemp=request.getParameter("username");
String password=request.getParameter("txtPassword");
out.print(password);
if(password==null)
password=rs1.getString("PassWord");
String sex=request.getParameter("sltGender");
if(sex=="0")
sex="女";
else
sex="男";
String phone=request.getParameter("txtTel");
if(phone==null)
phone=rs1.getString("Phone");
String email=request.getParameter("txtEmail");
if(email==null)
email=rs1.getString("E_mail");

String sql1="update UserInfo set PassWord='"+password+"',Sex='"+sex+"',Phone='"+phone+"',E_mail='"+email+"'where UserName='"+name+"'";
stmt.executeUpdate(sql1);
%>
<script language="javascript">alert("修改成功!");</script>
<%

}


}
catch(SQLException sqlExc)
 {
 sqlExc.printStackTrace();
 }
  catch(Exception e)
  {
e.printStackTrace();  
  }finally
  {
  //关闭连接,释放数据库资源
  try{
  
  if(rs1 !=null)
  rs1.close();
  if(stmt!=null)
  stmt.close();
  
  }
  //connPool.freeConnection(conn);
  
  catch(SQLException sqlExc)
  {
  sqlExc.printStackTrace();
  }
  }
%>

</body>
</html>

jsp input
[解决办法]
你对服务器端、浏览器端执行代码的顺序弄错了,你可以看看浏览器打开页面的时候生成的客户端代码,所谓<% flag=6; %>和<% flag=6;%>等在页面输出的时候都已经执行完成了,并不是等你调用handle和fresh的时候才执行。
[解决办法]
<%flag=5;%>
<%flag=6;%>

这个有什么意义?

热点排行