request.form 获取不到我提交的表单信息,是怎么回事啊,

sntdk 2008-03-02 09:12:11

我输入用户名后,再点击下一步,填写好答案后,好像 ""&request.form("Issue")&"" 获取不到我填写的,提问回答信息不知道是怎么回事,

<%
function WebContent()
dim rs,sql,NewPassword,step,sis
step=1
if request.QueryString("Step")="" then
%>
<table width="778" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td>
<table width="100%" border="0" cellspacing="0" cellpadding="2">
<form action="userforget.asp?Step=EnterNameMail" method="post" name="form" id="form">
<tr>
<td width="220" align="right"> 登 录 名:</td>
<td width="384"><input name="Userid" type="text" class="TextBox" id="Userid" size="30" maxlength="16" /></td>
</tr>
<tr>
<td height="60" colspan="2" align="center"><input name="Next2" type="submit" class="button" value=" 下一步 " /></td>
</tr>
</form>
</table>
<%
elseif request.QueryString("Step")="EnterNameMail" then

set rs = server.createobject("adodb.recordset")
Response.Write ""&request.form("Userid")&"" &_
"我是中国人"
sql="select * from IT_Users where IT_Userid='"&request.form("Userid")&"'"
rs.open sql,conn,1,1
if rs.eof then
WriteMsg("·登录名不存在或不对应,请返回重新输入。")
exit function
end if
%>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<form action="userforget.asp?Step=EnterAnswer&ID=<%=rs("ID")%>" method="post" name="form" id="form">
<tr>
<td width="220" align="right">登 录 名:</td>
<td width="384"><%=rs("IT_Userid")%></td>
</tr>
<tr>
<td align="right">密码提示问题:</td>
<td><%=rs("IT_Issue")%></td>
</tr>
<tr>
<td align="right">密码提示答案:</td>
<td><input name="Issue" id="Issue" type="text" class="TextBox" size="30" maxlength="100" /></td>
</tr>
<tr>
<td height="60" colspan="2" align="center"><input name="Next" type="submit" class="button" value=" 下一步 " /></td>
</tr>
</form>
</table>
<%
elseif request.QueryString("Step")="EnterAnswer" then
set rs = server.createobject("adodb.recordset")
sql="select * from IT_Users where ID="&request.QueryString("ID")
rs.open sql,conn,1,3
if rs.eof then
WriteMsg("·数据读取异常错误。")
exit function
end if
if rs("IT_Issue")<>""&request.form("Issue")&"" then
WriteMsg("·输入的密码提示答案不正确。")
exit function
end if
randomize timer
NewPassword=Int(899999*Rnd() +100000)
rs("IT_Userpassword")=MD5(NewPassword)
rs.update
rs.close
set rs=nothing
WriteMsg("·您的新密码是<font color='red'>"&NewPassword&"</font>,请记住密码或登录修改成易记、安全的密码。")
exit function
end if
end function
%>
...全文
980 31 打赏 收藏 转发到动态 举报
写回复
用AI写文章
31 条回复
切换为时间正序
请发表友善的回复…
发表回复
fcuandy 2008-03-03
  • 打赏
  • 举报
回复
将 request.form改为 request.
或者
将<form action="userforget.asp?Step=EnterAnswer&ID=<%=rs("ID")%>"
这里改为
<form action="userforget.asp" ... >
然后将 step, id,用 <input name="Step" value="EnterAnswer" type="hidden" />...
sntdk 2008-03-03
  • 打赏
  • 举报
回复
Response.Write("<script>alert('您的新密码是:"&NewPassword&"请用此密码登后修改密码');</script>")
sntdk 2008-03-03
  • 打赏
  • 举报
回复
对了诺要把这一句写成一个,js对话框应该怎样写呀

Response.Write("·您的新密码是<font color='red'>"&NewPassword&"</font>,请记住密码或登录修改成易记、安全的密码。")
sntdk 2008-03-03
  • 打赏
  • 举报
回复
非常感谢 chinmo

源来是md5 没有调用成功
rs("IT_Userpassword")=MD5(NewPassword,32)

这样就可以了,谢谢了咯,
  • 打赏
  • 举报
回复
NewPassword=Int(899999*Rnd() +100000)
Response.Write ""&MD5(NewPassword)&""
response.end()
rs("IT_Userpassword")=MD5(NewPassword)
rs.update
rs.close
set rs=nothing

NewPassword=Int(899999*Rnd() +100000)
rs("IT_Userpassword")=MD5(NewPassword)
Response.Write ""&rs("IT_Userpassword")&""
response.end()
rs.update
rs.close
set rs=nothing


NewPassword=Int(899999*Rnd() +100000)
rs("IT_Userpassword")=MD5(NewPassword)
rs.update
Response.Write ""&MD5(NewPassword)&""
response.end()
rs.close
set rs=nothing

分别这样来测试
以后的程序你都得学会这么调试
sntdk 2008-03-03
  • 打赏
  • 举报
回复
点了这个下一步后程序就不正常了,用 Response.Write 也没找出问题来,程序又不报错,


<form action="userforget.asp?Step=EnterAnswer&ID=<%=rs("ID")%>" method="post" name="form" id="form">
<tr>
<td width="220" align="right">登 录 名:</td>
<td width="384"><%=rs("IT_Userid")%></td>
</tr>
<tr>
<td align="right">密码提示问题:</td>
<td><%=rs("IT_Issue")%></td>
</tr>
<tr>
<td align="right">密码提示答案:</td>
<td><input name="key" id="key" type="text" class="TextBox" size="30" maxlength="100" /></td>
</tr>
<tr>
<td height="60" colspan="2" align="center"><input name="Next" type="submit" class="button" value=" 下一步 " /></td>
</tr>
</form>
</table>
<%
elseif request("Step")="EnterAnswer" then
set rs = server.createobject("adodb.recordset")
sql="select * from IT_Users where id='"&request("id")&"'"
' sql="select * from IT_Users where ID="&request.form("ID")&""
Response.Write ""&rs("id")&""
rs.open sql,conn,1,3
if rs.eof then
WriteMsg("·数据读取异常错误。")
exit function
end if
if rs("IT_key")<>""&request("key")&"" then
WriteMsg("·输入的密码提示答案不正确。")
exit function
end if
randomize timer
NewPassword=Int(899999*Rnd() +100000)
rs("IT_Userpassword")=MD5(NewPassword)
rs.update
rs.close
set rs=nothing
WriteMsg("·您的新密码是<font color='red'>"&NewPassword&"</font>,请记住密码或登录修改成易记、安全的密码。")
exit function
end if
end function
%>

  • 打赏
  • 举报
回复
Response.Write ""&MD5(NewPassword)&""
response.end()
加上这个来检测输出下
看看是更新不了数据库还是传值有问题
sntdk 2008-03-03
  • 打赏
  • 举报
回复
嗯现在我知道了,程序到了 就不正常了,之前,是正常的,


<%
elseif request.QueryString("Step")="EnterAnswer" then
set rs = server.createobject("adodb.recordset")
sql="select * from IT_Users where ID="&request.QueryString("ID")
rs.open sql,conn,1,3
if rs.eof then
WriteMsg("·数据读取异常错误。")
exit function
end if
if rs("IT_key")<>""&request.form("key")&"" then
WriteMsg("·输入的密码提示答案不正确。")
exit function
end if
randomize timer
NewPassword=Int(899999*Rnd() +100000)
rs("IT_Userpassword")=MD5(NewPassword)
rs.update
rs.close
set rs=nothing
WriteMsg("·您的新密码是<font color='red'>"&NewPassword&"</font>,请记住密码或登录修改成易记、安全的密码。")
exit function
end if
end function
%>

sntdk 2008-03-03
  • 打赏
  • 举报
回复

randomize timer
NewPassword=Int(899999*Rnd() +100000)
Response.Write ""&MD5(NewPassword)&""
rs("IT_Userpassword")=MD5(NewPassword)
rs.update
rs.close
set rs=nothing
Response.Write("·您的新密码是<font color='red'>"&NewPassword&"</font>,请记住密码或登录修改成易记、安全的密码。")
exit function
end if
end function


好像程序跑到这里就不对了,好像这里的程序没有制行,似的,也不报错
  • 打赏
  • 举报
回复
你这样检测还不全面
要把response.write("错误")
response.end()
放到每个if then 或者else里去测试
  • 打赏
  • 举报
回复
那你是倒哪里就不能正常了!!
sntdk 2008-03-03
  • 打赏
  • 举报
回复

elseif request("Step")="EnterAnswer" then
response.write("错误<br>")
set rs = server.createobject("adodb.recordset")
sql="select * from IT_Users where ID="&request("uid")

rs.open sql,conn,1,3
if rs.eof then
Response.Write("<a href=""javascript:history.back(-2)"">·数据读取异常错误。</a>")
exit function
end if
response.write("错误2<br>")
sk=RS("IT_key")
Response.Write sk
if rs("IT_key")<>request("key") then
response.write("错误3<br>")
Response.Write("<a href=""javascript:history.back(-2)"">·输入的密码提示答案不正确。</a>")
exit function
end if
response.write("错误4")


程序到这里都是正常的,能跑出所有的错误来,
sntdk 2008-03-03
  • 打赏
  • 举报
回复
可以看到错误,
  • 打赏
  • 举报
回复
我估计你加了这个On Error Resume Next,所以不提示错误
你把这句注释掉或者删掉,就会看到提示错误了
你检查你数据库连接的文件里是否有这句话!检查什么相关的文件里引用了这句话
  • 打赏
  • 举报
回复
elseif request("Step")="EnterAnswer" then

你再这句下面加
response.write("错误")
response.end()

如果能正常显示“错误”2个字,那说明到这里是正常的,如果这里都不正常,那就是你递交前代码设计有问题!然后下面的逐句这么检查
sntdk 2008-03-03
  • 打赏
  • 举报
回复

我现在改成这样也还是不行,获取都是用的request("")

<form action="userforget.asp" method="post" name="form" id="form">
<tr>
<td width="220" align="right">登 录 名:</td>
<td width="384"><%=rs("IT_Userid")%></td>
</tr>
<tr>
<td align="right">密码提示问题:</td>
<td><%=rs("IT_Issue")%></td>
</tr>
<tr>
<td align="right">密码提示答案:</td>
<td><input name="key" id="key" type="text" class="TextBox" size="30" maxlength="100" /></td>
</tr>
<tr>
<td height="60" colspan="2" align="center"><input name="Next" type="submit" class="button" value=" 下一步 " /></td>
</tr>
<input name="uid" value="<%=rs("ID")%>" type="hidden" />
<input name="step" value="EnterAnswer" type="hidden" />
</form>
fornothing 2008-03-03
  • 打赏
  • 举报
回复
既然是form的post,后面就不用跟Step=EnterAnswer&ID=<%=rs("ID")%
可以直接在userforget.asp直接引用request.form("key")

如果要使用userforget.asp?Step=EnterAnswer&ID=<%=rs("ID")%>
使用request.querystring("Step")
sntdk 2008-03-03
  • 打赏
  • 举报
回复
我的代码里面没有加上这个呀,
  • 打赏
  • 举报
回复
我估计你加了这个On Error Resume Next,所以不提示错误
你把这句注释掉或者删掉,就会看到提示错误了
sntdk 2008-03-03
  • 打赏
  • 举报
回复
主要就是这一段程序有问题 可不知道是怎么回事


<table width="100%" border="0" cellspacing="0" cellpadding="0">
<form action="userforget.asp?Step=EnterAnswer&ID=<%=rs("ID")%>" method="post" name="form" id="form">
<tr>
<td width="220" align="right">登 录 名:</td>
<td width="384"><%=rs("IT_Userid")%></td>
</tr>
<tr>
<td align="right">密码提示问题:</td>
<td><%=rs("IT_Issue")%></td>
</tr>
<tr>
<td align="right">密码提示答案:</td>
<td><input name="key" type="text" class="TextBox" id="key" value="" size="30" maxlength="100" /></td>
</tr>
<tr>
<td height="60" colspan="2" align="center"><input name="Next2" type="submit" class="button" value=" 下一步 " /></td>
</tr>
</form>
</table>
<%
elseif request("Step")="EnterAnswer" then
set rs = server.createobject("adodb.recordset")
sql="select * from IT_Users where id='"&request("id")&"'"
' sql="select * from IT_Users where ID="&request.form("ID")&""
rs.open sql,conn,1,3
if rs.eof then
Response.Write("<a href=""javascript:history.back(-1)"">·数据读取异常错误。</a>")
exit function
end if
if rs("IT_key")<>""&request("key")&"" then
Response.Write("<a href=""javascript:history.back(-1)"">·输入的密码提示答案不正确。</a>")
exit function
end if
randomize timer
NewPassword=Int(899999*Rnd() +100000)
rs("IT_Userpassword")=MD5(NewPassword)
rs.update
rs.close
set rs=nothing
Response.Write("·您的新密码是<font color='red'>"&NewPassword&"</font>,请记住密码或登录修改成易记、安全的密码。")
exit function
end if
end function

%>
加载更多回复(11)
​ 博主介绍:✌在职Java研发工程师、专注于程序设计、源码分享、技术交流、专注于Java技术领域和毕业设计✌项目名称基于Web的酒店客房管理系统的设计与实现系统说明3.2.1  用户模块功能分析前台模块应主要包括用户登录模块、用户注册模块、查看客房信息模块、客房预定 模块、用户留言模块、充值模块和个人信息维护模块。用户登录模块:用户通过输入注册的的账号和密码,然后进行身份验证,匹配成功 后实现登录功能。用户注册模块:用户输入合法的账号和密码可以实现注册功能。 查看客房信息模块:用户可以通过首页查看客房的价格,图片,详情等信息,从而   可以选择想要预定的房间。 客房预定模块:用户选择自己想要预定的客房后,可以通过输入相关信息进行订房操作。用户留言模块:用户可以向管理员发送留言。 充值模块:用户可以通过添加银行卡再为自己进行充值操作。 个人信息维护模块:用户可以修改自己的姓名、密码、身份证号等信息,还可以查看自己的订单。3.2.2  管理员模块功能分析对于管理员而言,一个好的管理系统总是能让酒店的管理工作事半功倍[7]。管理员 能够通过这个系统对自己的酒店情况一目了然,应该包括客户留言模块、客房管理模 块、订房信息管理模块、入住信息管理模块、统计分析模块、酒店新闻管理模块、会 员信息管理模块、员工信息管理模块、系统用户管理模块、个人信息维护模块。客户留言模块:管理员可以查看并回复用户的留言。客房管理模块:管理员可以管理客房信息,可以添加新的客房,删除已经停用的客房信息,还可以修改现有的客房信息。订房信息管理模块:管理员可以处理用户的订房请求,为用户办理入住手续。入住信息管理模块:对于没有注册的线下客户,也可以办理入住手续。统计分析模块:可以对酒店所有的入住信息进行记录和总结分析。酒店新闻管理模块:管理员可以更新网站上的新闻公告,展示图片等信息。会员信息管理模块:管理员可以查看到所有的注册会员信息,可以对会员信息进行删除,修改,添加操作。员工信息管理模块:管理员可以查看到自己公司所有的员工信息,而且还可以对员工的相关信息进行管理。系统用户管理模块:管理员可以查看到所有的系统管理员信息并对管理员信息进行管理。个人信息维护模块:管理员可以更改自己的登录密码或者是姓名、性别、手机号等 相关个人信息。​编辑 环境需要1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS; 5.数据库:MySql 5.7版本;6.是否Maven项目:否;技术栈1. 后端:Spring+SpringMVC+Mybatis2. 前端:JSP+CSS+JavaScript+jQuery使用说明1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行;3. 将项目中springmvc-servlet.xml配置文件中的数据库配置改为自己的配置;4. 运行项目,在浏览器中输入http://localhost:8080/ 登录运行截图​编辑​编辑​编辑​编辑​编辑​编辑​编辑​编辑​编辑​编辑​编辑​编辑​编辑​编辑​编辑 用户管理控制层:package com.houserss.controller;import javax.servlet.http.HttpSession;import org.apache.commons.lang3.StringUtils;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestMethod;import org.springframework.web.bind.annotation.RequestParam;import org.springframework.web.bind.annotation.ResponseBody;import com.houserss.common.Const;import com.houserss.common.Const.Role;import com.houserss.common.ServerResponse;import com.houserss.pojo.User;import com.houserss.service.IUserService;import com.houserss.service.impl.UserServiceImpl;import com.houserss.util.MD5Util;import com.houserss.util.TimeUtils;import com.houserss.vo.DeleteHouseVo;import com.houserss.vo.PageInfoVo;/** * Created by admin */@Controller@RequestMapping(/user/)public class UserController if (ip != null && ip.length() > 0) String[] ips = ip.split(,);for (int i = 0; i  

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧