| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2328 人关注过本帖
标题:在本页上用一个JS检查表单,验证不过,它还是会改数据,怎么不让它跳到修改 ...
只看楼主 加入收藏
finaly
Rank: 1
来 自:广州
等 级:新手上路
帖 子:80
专家分:0
注 册:2006-6-5
收藏
 问题点数:0 回复次数:8 
在本页上用一个JS检查表单,验证不过,它还是会改数据,怎么不让它跳到修改数据的页哦
在本页上用一个JS检查表单,验证不过,它还是会改数据,怎么不让它跳到修改数据的页哦.
////////////////////////////////////////////////////////////////////////////////////////
<script>
function check()
{
 if (document.change.newpsw.value=="")
  {  
    alert("请输入新密码!") ;
    change.newpsw.focus();
    return false;
  }
 if (document.change.newpsw2.value!=document.change.newpsw.value)
  {
    alert ("两次密码输入不正确!");
    change.newpsw2.focus();
    return false;
  }
 }
</script>
<form id="change" name="change" method="post" action="saveadmin.asp?action=change">

  <table width="650" height="141" border="0" align="center" cellpadding="1" cellspacing="1">
    <tr>
      <td width="202" height="30" align="right">登录名:</td>
      <td colspan="2"><%= session("admin") %></td>
    </tr>
    <tr>
      <td height="35" align="right">新密码:</td>
      <td colspan="2"><input name="newpsw" type="text" id="newpsw" /></td>
    </tr>
    <tr>
      <td align="right">确认密码:</td>
      <td colspan="2"><input name="newpsw2" type="text" id="newpsw2" /></td>
    </tr>
    <tr>
      <td align="right"><input type="submit" name="Submit" value="提交" onClick="check();" /></td>
      <td width="144" align="center"><input type="reset" name="Submit2" value="重置" /></td>
      <td width="294">&nbsp;</td>
    </tr>
  </table>
</form>
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

跳转页
set rsch = server.CreateObject("adodb.recordset")
     rsch.open "select * from admin where name='"&session("admin")&"'",conn,2,3
     rsch("password")=md5(trim(request("newpsw")))
     rsch.update()
     rsch.close
   response.Write"<script language=javascript>alert('修改成功!');history.go(-1);</script>"
/////////////////////////////////////////////////////////////////////////////////////////////////////

当两次密码不正确的,它先提示两次密码输入不正确!然后就会接着提示 修改成功,而数据库里数据也真的改掉了,请问怎么办?
搜索更多相关主题的帖子: 表单 数据 验证 检查 
2008-04-25 15:37
finaly
Rank: 1
来 自:广州
等 级:新手上路
帖 子:80
专家分:0
注 册:2006-6-5
收藏
得分:0 
saveadmin.asp
------------------------------------------------
<!--#include file="conn.asp"-->
<!--#include file="md5.asp"-->
<%
if session("admin")="" then
response.Write "<script language='javascript'>alert('请先登录!');history.go(-1);</script>"
response.End
else
if session("rank")>1 then
response.Write "<div align=center><font size=5 color=red><b>你的权限不够!</b></font></div>"
response.End
end if
end if
%>
<%dim action
action=request.QueryString("action")
case "change"
 set rsch = server.CreateObject("adodb.recordset")
     rsch.open "select * from admin where name='"&session("admin")&"'",conn,2,3
     rsch("password")=md5(trim(request("newpsw")))
     rsch.update()
     rsch.close
   response.Write"<script language=javascript>alert('修改成功!');history.go(-1);</script>"
end select
%>

http://
2008-04-25 15:52
finaly
Rank: 1
来 自:广州
等 级:新手上路
帖 子:80
专家分:0
注 册:2006-6-5
收藏
得分:0 
一样的,也会改得到

http://
2008-04-25 15:59
finaly
Rank: 1
来 自:广州
等 级:新手上路
帖 子:80
专家分:0
注 册:2006-6-5
收藏
得分:0 
是不是非要到后台里才行呀,就是在 saveadmin.asp作验证?

http://
2008-04-25 15:59
dreaming1120
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2008-4-25
收藏
得分:0 
在form里加验证呀!<form id="change" name="change" method="post" action="saveadmin.asp?action=change" onsubmit ="return check();">
2008-04-25 16:51
tianyu123
Rank: 1
等 级:新手上路
威 望:2
帖 子:576
专家分:0
注 册:2007-8-26
收藏
得分:0 
加上红色部分
<script>
function check()
{
if (document.change.newpsw.value=="")
  {  
    alert("请输入新密码!") ;
    change.newpsw.focus();
    return false;
  }
if (document.change.newpsw2.value!=document.change.newpsw.value)
  {
    alert ("两次密码输入不正确!");
    change.newpsw2.focus();
    return false;
  }
return true;
}
</script>
<form id="change" name="change" method="post" action="saveadmin.asp?action=change">

  <table width="650" height="141" border="0" align="center" cellpadding="1" cellspacing="1">
    <tr>
      <td width="202" height="30" align="right">登录名:</td>
      <td colspan="2"><%= session("admin") %></td>
    </tr>
    <tr>
      <td height="35" align="right">新密码:</td>
      <td colspan="2"><input name="newpsw" type="text" id="newpsw" /></td>
    </tr>
    <tr>
      <td align="right">确认密码:</td>
      <td colspan="2"><input name="newpsw2" type="text" id="newpsw2" /></td>
    </tr>
    <tr>
      <td align="right"><input type="submit" name="Submit" value="提交" onClick="return check();" /></td>
      <td width="144" align="center"><input type="reset" name="Submit2" value="重置" /></td>
      <td width="294"> </td>
    </tr>
  </table>
</form>

改变一切,须从改变观念开始!
2008-04-25 17:15
ayue222
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:341
专家分:0
注 册:2007-7-25
收藏
得分:0 
<td align="right"><input type="button" name="Submit" value="提交" onClick="return check();" /></td>
2008-04-25 18:42
hmhz
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:30
帖 子:1890
专家分:503
注 册:2006-12-17
收藏
得分:0 
JS验证是治标不治本,要asp+js相集合才能做好验证
JS是客户端执行脚本,需要客户端的浏览器支持javascript脚本运行,这个JS才有验证效果,如果客户端将自己的浏览器禁止了JS活动脚本运行的话,那么你这个JS验证根本就是形同虚设了,要做好防范,就得两方面一起着手,JS要做,asp服务端验证也要做,这样,即使用户禁止了客户端的活动脚本运行,那么他输入的数据同样会在服务器上的asp程序中进行再次验证,服务器上的验证他是无法躲避的了,除非你的asp验证存在漏洞
2008-04-25 21:23
finaly
Rank: 1
来 自:广州
等 级:新手上路
帖 子:80
专家分:0
注 册:2006-6-5
收藏
得分:0 

8.9楼正解,感谢谢!

http://
2008-04-26 11:43
快速回复:在本页上用一个JS检查表单,验证不过,它还是会改数据,怎么不让它跳到 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016384 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved