注册 登录
编程论坛 ASP技术论坛

这个写法哪里有问题

kyou5478 发布于 2013-08-21 16:13, 812 次点击
程序代码:
        set rs=server.CreateObject("adodb.recordset")
        if request2.form("id")="" then
            rsstr="select ppic from light where id="&request2.form("id")
            rs.open rsstr,conn,1,1
            if rs.recordcount=0 then
                rs.open "select * from light",conn,1,3
                rs.addnew
                rs("ppic")=request2.form("ppic")
                rs("pictime")=date()
                rs.update
            else
            response.write "<script language='javascript'>"
            response.write "alert('不能上传');"
            response.write "window.location.href='javascript:history.go(-1)';"
            response.write "</script>"
            end if
        end if


请教大神,这个哪里有问题
6 回复
#2
hu9jj2013-08-23 07:45
仅这段代码无法测试,手工分析比较麻烦。楼主究竟出了什么问题?
#3
kyou54782013-08-23 08:18
回复 2楼 hu9jj
程序代码:
if request2.form("id")<>"" then
    set rs=server.CreateObject("adodb.recordset")
    rsstr="select ppic from light where id="&request2.form("id")
    rs.open rsstr,conn,1,1
    if rs.recordcount=0 then
        set rss=server.CreateObject("adodb.recordset")
        rss.open "select * from light",conn,1,3
        rss.addnew
        rss("ppic")=request2.form("ppic")
        rss("pictime")=date()
        rss.update
        rss.close
        set rss=nothing
        
    else
        response.write "<script language='javascript'>"
        response.write "alert('不能上传');"
        response.write "window.location.href='modify.asp?id="&request2.form("id")&"';"
        response.write "</script>"
    end if
    rs.close
    set rs=nothing
end if


现在改过了,就是 rs.recordcount=0 的时候好像没有执行写入数据库,直接运行 else 部分了
#4
oo秋风落叶oo2013-09-05 15:23
rs.eof 不好使么
#5
pbtpa662013-09-05 16:49
有点晦涩难懂,可以找我!
#6
ywyql_842013-09-18 10:41
你的 request2 是类么,如果不是的话 那就错了
#7
chenjia68212013-09-19 10:18
你的意思是判断一下表里有没有添加过这条记录,我常有rs.eof 来判断 而不用 rs.recordcount=0 如果没有记录的话返值好像是  -1 吧,你可以试一下,也可以用rs.recordcount<1来判断,可以试试
1