| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1541 人关注过本帖
标题:还是VB函数问题
只看楼主 加入收藏
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
收藏
得分:0 
addsql="insert into ErrUser(ErrIp,ErrNum) values('"&WrongIp&"',"+0+")"
红字这个地方楼主做什么用?
2005-12-09 22:35
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
收藏
得分:0 
这是我修改的CHKLOGIN.ASP的代码。
Function ErrRecord(WrongIp)
set rs=server.createobject("adodb.recordset")
sql="select * from ErrUser where ErrIp='"&WrongIp&"'"
rs.open sql,conn,1,1
if rs.eof then
sqlup="update ErrUser Set ErrNum=ErrNum+1 where ErrIp='"&WrongIp&"'"
set rs=conn.execute(sqlup)
else
addsql="select * from ErrUser where (Errid is Null)"
rs.open addsql,conn,3,2
rs.addnew
rs("ErrIp")=WrongIp
rs.update
End if
ErrRecord=rs("ErrNum")
rs.close
End Function
dim rs
UserName1=request.form("UserName")'获得登陆界面输入的用户名
PassWd1=request.form("PassWd")''获得登陆界面输入的密码
CodeName=request.Form("CodeName")
if session("getcode")<>CodeName then
response.Write("<script>alert('验证码错误,请重试!');history.back();</script>")
else
session("getcode")=""
set rs=server.CreateObject("ADODB.RecordSet")'建立数据库连接
rs.open "select * from admin where UserName='" & UserName1 & "'",conn,1 '查询该用户名和密码是否存在
if passwd1<>rs("passwd") then '当密码错误时
ErrIp=Request.ServerVariables("REMOTE_ADDR")
if ErrRecord(ErrIp)>5 then
response.write "<script>alert('用户名或者密码错误!!');</script>"
else
Response.Write "ErrRecord"
end if
else '当输入的正确时进行session记录并调出mymanage.asp
session("UserName")=RS("Username")
session("KEY")=rs("OSKEY")
if session("KEY")="super" then
response.redirect "mymanage.asp"
else
response.Redirect "myaddarticle.asp"

end if
end if
rs.close
set rs=nothing
end if
2005-12-09 23:32
caiyakang
Rank: 2
等 级:新手上路
威 望:5
帖 子:2111
专家分:0
注 册:2005-3-24
收藏
得分:0 
我后面把他改成数字类型了,默认为0了
我原来是想把他初始化为0,我文件上传了,只有3个文件.你帮我看一下

中国人的财富网:http://www..cn/
2005-12-09 23:33
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
收藏
得分:0 
addsql="insert into ErrUser(ErrIp,ErrNum) values('"&WrongIp&"',"+0+")"
初始化为0就不能这么写
addsql="insert into ErrUser(ErrIp,ErrNum) values('"&WrongIp&"',0)"
这样写才能正确初始化为0。
2005-12-09 23:35
caiyakang
Rank: 2
等 级:新手上路
威 望:5
帖 子:2111
专家分:0
注 册:2005-3-24
收藏
得分:0 

但还是不行,你干脆下载,帮我看一下
谢谢你!!老大


中国人的财富网:http://www..cn/
2005-12-09 23:36
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
收藏
得分:0 

你这个程序问题不小尤其是那个函数
Function ErrRecord(WrongIp)
set rs=server.createobject("adodb.recordset")
sql="select * from ErrUser where ErrIp='"&WrongIp&"'"
rs.open sql,conn,1,1
if rs.eof then
sqlup="update ErrUser Set ErrNum=ErrNum+1 where ErrIp='"&WrongIp&"'"
set rs=conn.execute(sqlup)
else
addsql="select * from ErrUser where (Errid is Null)"
rs.open addsql,conn,3,2
rs.addnew
rs("ErrIp")=WrongIp
rs.update
End if
ErrRecord=rs("ErrNum")
rs.close
End Function
你的红字的地方错误原因是,你给我的数据库那个ErrUser表没有数据而你这里执行的是Update显然没有数据怎么会Update呢?
添加数据的addsql="select * from ErrUser where (Errid is Null)"
这句是添加数据根本没必要加where直接addsql="select * from ErrUser"就行了。rs.open addsql,conn,3,2这里最好用rs.open addsql,conn,1,3的类型来添加数据。

2005-12-09 23:59
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
收藏
得分:0 
eof的情况下应该是做添加数据insert的操作而不是update的操作。
2005-12-10 00:02
caiyakang
Rank: 2
等 级:新手上路
威 望:5
帖 子:2111
专家分:0
注 册:2005-3-24
收藏
得分:0 
还是老大细心,我回头改一下

中国人的财富网:http://www..cn/
2005-12-10 02:22
caiyakang
Rank: 2
等 级:新手上路
威 望:5
帖 子:2111
专家分:0
注 册:2005-3-24
收藏
得分:0 
你分数比我高这么多,文章差不多
原来我的分数是灌水来的

中国人的财富网:http://www..cn/
2005-12-10 02:24
caiyakang
Rank: 2
等 级:新手上路
威 望:5
帖 子:2111
专家分:0
注 册:2005-3-24
收藏
得分:0 
<%
Function ErrRecord(WrongIp)
set rs=server.createobject("adodb.recordset")
sql="select * from ErrUser where ErrIp='"&WrongIp&"'"
rs.open sql,conn,1,3
if not rs.eof then
sqlup="update ErrUser Set ErrNum=ErrNum+1 where ErrIp='"&WrongIp&"'"
conn.execute(sqlup)
else
addsql="select * from ErrUser"
rs.open addsql,conn,1,3
rs.addnew
rs("ErrIp")=WrongIp
rs.update
End if
ErrRecord=rs("ErrNum")
rs.close
End Function
我改了一下还是不行

[此贴子已经被作者于2005-12-10 10:55:39编辑过]


中国人的财富网:http://www..cn/
2005-12-10 10:55
快速回复:还是VB函数问题
数据加载中...
 
   



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

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