| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1062 人关注过本帖
标题:[求助]BOF 或 EOF 中有一个是“真”,或者当前的记录已被删除
只看楼主 加入收藏
在编程中沦落
Rank: 2
等 级:新手上路
威 望:4
帖 子:411
专家分:0
注 册:2005-12-25
收藏
 问题点数:0 回复次数:9 
[求助]BOF 或 EOF 中有一个是“真”,或者当前的记录已被删除
弄不明白,为什么错了?
错误提示:

技术信息(用于支持人员)

  • 错误类型:
    ADODB.Field (0x80020009)
    BOF 或 EOF 中有一个是“真”,或者当前的记录已被删除,所需的操作要求一个当前的记录。
    /pass.asp

  • 浏览器类型:
    Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; MyIE2; .NET CLR 1.1.4322)

  • 网页:
    GET /pass.asp

网页pass.asp的代码如下:
<!--#include file="conn.asp"-->
<!--#include file="md5code.asp" -->
<link href=../css.css rel=stylesheet>
<style type="text/css">
<!--
body,td,th {
font-size: 12px;
}
-->
</style><body style='cursor:url("Mouse.ani")'>
<center>
修改我的密码(<font color="#0099FF">不修改清留空或者点击“返回”</font>)
<%
dim anum,pass
anum=trim(session("name"))
set rs= Server.CreateObject("adodb.recordset")
sql = "Select * From gl Where anum='"&username&"'"
rs.open sql,conn,1,3
if request.form("active")="" then'用来判断的表单提交还是刷新页面,如果是提交表单,那么隐藏域的值肯定被提交,这样Request.form("active")不为空,就执行以下回复语句.如果没提交表单,而是刷新页面,那么隐藏域的值没有提交,Request.form("active")肯定为空,就跳过不执行
else

'===========================================================下面开始为判断语句==============================================
password=replace(trim(request.form("password")),"'","")
password2=replace(trim(request.form("password2")),"'","")
if password="" or len(password)>16 or len(password)<6 then
response.write "<SCRIPT language=JavaScript>alert('密码长度为6-16个字符');"
Response.Write"this.location.href='vbscript:history.back()';</SCRIPT>"
Response.End
end if

if password2="" then
response.write "<SCRIPT language=JavaScript>alert('确认密码不能为空');"
Response.Write"this.location.href='vbscript:history.back()';</SCRIPT>"
Response.End
else
if password<>password2 then
response.write "<SCRIPT language=JavaScript>alert('密码和确认密码不一致');"
Response.Write"this.location.href='vbscript:history.back()';</SCRIPT>"
Response.End
end if
end if
'===========================================判断语句结束,以下是把表单的数据插入到数据库中======================
rs("password")=md5(Trim(Request.Form("password")))
rs.update
rs.close
set rs=nothing
response.redirect "index.asp"'
end if
'==============================================插入数据库的操作到此结束=====================================
%>
<form action='pass.asp?action=xg' method=post>
<table width="100%" border="1" bordercolor=#3399ff bgcolor=#F2F8FF>
<tr><td width="13%">您的姓名:</td><td width="87%"> <%=session("name")%> </td></tr>
<tr><td>输入新密码:</td><td><input name=password type=password id="password" size="18" maxlength="20" %>
<font color="#00FF00">*</font><font color="#999900">输入新密码</font> </td>
</tr><br>
<tr><td>确认新密码:</td><td><input name=password2 type=password id="password2" size="18" maxlength="20" %>
<font color="#0000FF">*</font><font color="#999966">确认新密码</font> </td>
</tr>
<tr><td colspan=2>备注:<br></td></tr>
<tr align="center" valign="middle"><td colspan=2><input type=hidden name=aid value=<%=rs("id")%> ><input type=submit value="提交" class=ibox><input type=reset class=ibox><input type=button class=ibox value=返回 onclick='javascript:history.back()'></td></tr>
</table>
<div align="left"></div>
</form>

请大虾帮帮忙,谢谢!

[此贴子已经被作者于2006-2-9 10:41:04编辑过]

搜索更多相关主题的帖子: BOF EOF 记录 删除 
2006-02-09 10:37
rainic
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:2367
专家分:0
注 册:2005-8-9
收藏
得分:0 
rs("password")=md5(Trim(Request.Form("password")))
rs.update
rs.close
set rs=nothing

response.redirect "index.asp"'
end if
'==============================================插入数据库的操作到此结束=====================================
%>
<form action='pass.asp?action=xg' method=post>
<table width="100%" border="1" bordercolor=#3399ff bgcolor=#F2F8FF>
<tr><td width="13%">您的姓名:</td><td width="87%"> <%=session("name")%> </td></tr>
<tr><td>输入新密码:</td><td><input name=password type=password id="password" size="18" maxlength="20" %>
<font color="#00FF00">*</font><font color="#999900">输入新密码</font> </td>
</tr><br>
<tr><td>确认新密码:</td><td><input name=password2 type=password id="password2" size="18" maxlength="20" %>
<font color="#0000FF">*</font><font color="#999966">确认新密码</font> </td>
</tr>
<tr><td colspan=2>备注:<br></td></tr>
<tr align="center" valign="middle"><td colspan=2><input type=hidden name=aid value=<%=rs("id")%> ><input type=submit value="提交" class=ibox><input type=reset class=ibox><input type=button class=ibox value=返回 onclick='javascript:history.back()'></td></tr>
</table>
<div align="left"></div>
</form>

2006-02-09 11:33
在编程中沦落
Rank: 2
等 级:新手上路
威 望:4
帖 子:411
专家分:0
注 册:2005-12-25
收藏
得分:0 

多谢楼上,我更改后已经能正常显示修改密码的表格,可是为什么提交后密码还没有被修改,盼望进一步提示,谢谢!
更改后的程序代码如下:


<!--#include file="conn.asp"-->
<!--#include file="md5code.asp" -->
<link href=../css.css rel=stylesheet>
<style type="text/css">
<!--
body,td,th {
font-size: 12px;
}
-->
</style><body style='cursor:url("Mouse.ani")'>
<center>
修改我的密码(<font color="#0099FF">不修改清留空或者点击“返回”</font>)
<%
dim anum,password
anum=trim(session("name"))
set rs= Server.CreateObject("adodb.recordset")
sql = "Select * From gl Where anum='"&anum&"'"
rs.open sql,conn,1,3
if request.form("active")="" then'用来判断的表单提交还是刷新页面,如果是提交表单,那么隐藏域的值肯定被提交,这样Request.form("active")不为空,就执行以下回复语句.如果没提交表单,而是刷新页面,那么隐藏域的值没有提交,Request.form("active")肯定为空,就跳过不执行
else

'===========================================================下面开始为判断语句==============================================
password=replace(trim(request.form("password")),"'","")
password2=replace(trim(request.form("password2")),"'","")
if password="" or len(password)>16 or len(password)<6 then
response.write "<SCRIPT language=JavaScript>alert('密码长度为6-16个字符');"
Response.Write"this.location.href='vbscript:history.back()';</SCRIPT>"
Response.End
end if

if password2="" then
response.write "<SCRIPT language=JavaScript>alert('确认密码不能为空');"
Response.Write"this.location.href='vbscript:history.back()';</SCRIPT>"
Response.End
else
if password<>password2 then
response.write "<SCRIPT language=JavaScript>alert('密码和确认密码不一致');"
Response.Write"this.location.href='vbscript:history.back()';</SCRIPT>"
Response.End
end if
end if
'===========================================判断语句结束,以下是把表单的数据插入到数据库中======================
rs("password")=md5(Trim(Request.Form("password")))
rs.update
rs.close
set rs=nothing
response.redirect "index.asp"
end if

'==============================================插入数据库的操作到此结束=====================================
%>
<form action='pass.asp?name=<%=request("anum")%>' method=post>
<table width="100%" border="1" bordercolor=#3399ff bgcolor=#F2F8FF>
<tr><td width="13%">您的姓名:</td><td width="87%"> <%=session("name")%> </td></tr>
<tr><td>输入新密码:</td><td><input name=password type=password id="password" size="18" maxlength="20" %>
<font color="#00FF00">*</font><font color="#999900">输入新密码</font> </td>
</tr><br>
<tr><td>确认新密码:</td><td><input name=password2 type=password id="password2" size="18" maxlength="20" %>
<font color="#0000FF">*</font><font color="#999966">确认新密码</font> </td>
</tr>
<tr><td colspan=2>备注:<br></td></tr>
<tr align="center" valign="middle"><td colspan=2><input type=hidden name=aid value=<%=rs("anum")%> ><input type=submit value="提交" class=ibox><input type=reset class=ibox><input type=button class=ibox value=返回 onclick='javascript:history.back()'></td></tr>
</table>
<div align="left"></div>
</form>

[此贴子已经被作者于2006-2-9 12:40:38编辑过]


2006-02-09 12:33
阳光白雪
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:39
帖 子:2220
专家分:0
注 册:2005-11-18
收藏
得分:0 
dim anum,password
anum=trim(session("name"))
set rs= Server.CreateObject("adodb.recordset")


<form action='pass.asp?name=<%=request("anum")%>' method=post>

您的姓名:</td><td width="87%"> <%=session("name")%> </td></tr>

检查一下上面几个地方是否正确

专注于WEB前端交互平台开发:[url=http://blog./]blog.[/url](富客户端技术(RIA)交流平台)
2006-02-09 12:52
在编程中沦落
Rank: 2
等 级:新手上路
威 望:4
帖 子:411
专家分:0
注 册:2005-12-25
收藏
得分:0 
正确啊,数据库中name 和anum的内容是一样的,是同一个表里面的两例字段。

2006-02-09 12:59
阳光白雪
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:39
帖 子:2220
专家分:0
注 册:2005-11-18
收藏
得分:0 

那你在
sql = "Select * From gl Where anum='"&anum&"'"
rs.open sql,conn,1,3
后加上下面的语句
response.Write(rs.recordcount)
response.End()
看输出的是0还是1


专注于WEB前端交互平台开发:[url=http://blog./]blog.[/url](富客户端技术(RIA)交流平台)
2006-02-09 13:03
在编程中沦落
Rank: 2
等 级:新手上路
威 望:4
帖 子:411
专家分:0
注 册:2005-12-25
收藏
得分:0 
结果是1,怎么了?

这个调试的是?

2006-02-09 13:18
阳光白雪
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:39
帖 子:2220
专家分:0
注 册:2005-11-18
收藏
得分:0 
recordcount是统计查询到的记录数

那就奇怪了,查询到了记录,怎么也不能修改~~

专注于WEB前端交互平台开发:[url=http://blog./]blog.[/url](富客户端技术(RIA)交流平台)
2006-02-09 13:47
阳光白雪
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:39
帖 子:2220
专家分:0
注 册:2005-11-18
收藏
得分:0 
if request.form("active")="" then


表单中没有name=active 的元素

专注于WEB前端交互平台开发:[url=http://blog./]blog.[/url](富客户端技术(RIA)交流平台)
2006-02-09 13:51
在编程中沦落
Rank: 2
等 级:新手上路
威 望:4
帖 子:411
专家分:0
注 册:2005-12-25
收藏
得分:0 
搞定,多谢rainic阳光白雪的帮助,谢谢!

2006-02-09 14:11
快速回复:[求助]BOF 或 EOF 中有一个是“真”,或者当前的记录已被删除
数据加载中...
 
   



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

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