主题:  帮我控制一下循环好吧

sunslee

职务:普通成员
等级:1
金币:0.0
发贴:107
注册:2003/5/13 22:32:02
#12003/6/17 11:37:44
<%
set myconn=server.CreateObject("adodb.connection")
set rs=server.CreateObject("adodb.recordset")
myconn.open "filedsn=e:\user\user.dsn"
rs.open "select username,password from user",myconn
%>

<%
do while not rs.eof
username=rs("username")
password=rs("password")
    if request.Form("name")=username then
        if request.Form("password")=password then
            response.Write("ok ")
        else response.Write("wrong password ")
        end if
    else response.Write("user is not exist ")
    end if
rs.movenext
loop
%>

帮我控制一下循环好吧
现在出来的语句都会重复好几次。奇怪哦。



{ 在指尖上绽放的花朵 }

职务:普通成员
等级:5
金币:14.0
发贴:3209
注册:2002/7/25 21:24:11
#22003/6/17 12:31:48
用户的存在与否似乎不是这样判断的?

并且,出现显示信息以后,就应该跳出循环?

修改后程序如下。

<%
Checked = 0     '设置变量判断用户存在与否
do while not rs.eof
username=rs("username") 
password=rs("password")
    if request.Form("name")=username then 
        Checked = 1
        if request.Form("password")=password then
            response.Write("ok ")
        else 
            response.Write("wrong password ")
        end if 
        [color=red]Exit Do[/color]
    end if
rs.movenext
loop
if Checked =0 then 
    response.Write("user is not exist ")
    Response.End
end if 
%>


似乎是这样了吧?



sunslee

职务:普通成员
等级:1
金币:0.0
发贴:107
注册:2003/5/13 22:32:02
#32003/6/17 12:40:47
谢谢您的帮助,老兄有没有qq方便联系,呵呵,我是自学的,所以可能不是很规范。需要大虾提醒罗:)



sunslee

职务:普通成员
等级:1
金币:0.0
发贴:107
注册:2003/5/13 22:32:02
#42003/6/17 13:04:22
<%
set conn=server.createobject("ADODB.Connection")
set rs=server.createobject("ADODB.Recordset")
conn.open "filedsn=e:\user\user.dsn"
rs.open "select username from user",conn
strsql="insert into user(username,password,name_corp,product,add_corp,pc,tel_corp,fax_corp,mobile,email,ip) values ('"&username&"','"&password&"','"&name_corp&"','"&product&"','"&add_corp&"','"&pc&"','"&tel_corp&"','"&fax_corp&"','"&mobile&"','"&email&"','"&ip&"')"
checked=0
do while not rs.eof
    if rs("username")=username then
        checked=1
    else rs.open strsql,conn
    end if
rs.movenext
loop
if Checked =1 then
response.Write("username is exist ,change another one! ")
Response.End
end if
%>

这里也有一段程序,也是循环出错,不能控制,我想控制注册时候用户名和库里面的核对,如果同名则要更换。请问这个怎么弄啊。我已经学以致用了,用checked来控制,而不是直接输出。