标题:大家帮忙啊,这段代码错在哪里呢
只看楼主
zyw2004
Rank: 1
等 级:新手上路
帖 子:43
专家分:0
注 册:2005-12-23
 问题点数:0 回复次数:7 
大家帮忙啊,这段代码错在哪里呢
<%
name=request.form("name")
sex=request.form("sex")
age=request.form("age")
note=request.form("note")
set conn=server.createobject("adodb.connection")
conn.open "driver={microsoft access driver (*.mdb)};dbq="&server.mappath("sj1.mdb")
set rs=server.CreateObject("adodb.recordset")
sqlstr="select * from test"
rs.open sqlstr,conn,1,3
while not rs.eof
if rs("name").value=name then
response.write "失败"
else
rs.addnew
rs("name").value=name
rs("sex").value=sex
rs("age").value=age
rs("note").value=note
rs.update
rs.close
conn.close
set rs=nothing
set conn=nothing
response.write "记录添加成功!"
end if
rs.movenext
wend
%>
浏览器提示:红色的就是第20行
  • 错误类型:
    Microsoft OLE DB Provider for ODBC Drivers (0x80040E2F)
    [Microsoft][ODBC Microsoft Access Driver]行中有错误
    /reg.asp, 第 20 行

  • 浏览器类型:
    Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; InfoPath.1)

  • 网页:
    POST 36 ??? /reg.asp

  • POST Data:
    name=&age=&note=&Submit=%CC%E1%BD%BB

  • 时间:
    2005年12月29日, 上午 09:57:20
  • 搜索更多相关主题的帖子: name form request conn 
    2005-12-29 10:00
    feier
    Rank: 1
    等 级:新手上路
    帖 子:68
    专家分:0
    注 册:2004-11-30
    得分:0 

    rs("name").value=name
    rs("sex").value=sex
    rs("age").value=age
    rs("note").value=note

    看看数据库中的这些字段和上面的一致吗?或者有没有这些字段??^ ^


    ~加油!!!~
    2005-12-29 10:04
    zyw2004
    Rank: 1
    等 级:新手上路
    帖 子:43
    专家分:0
    注 册:2005-12-23
    得分:0 

    一致,但还是提示有错误啊

    2005-12-29 10:22
    wxhwxh
    Rank: 1
    等 级:新手上路
    帖 子:139
    专家分:0
    注 册:2005-11-19
    得分:0 
    while not rs.eof
    if rs("name").value=name then
    response.write "失败"
    else
    rs.addnew
    rs("name").value=name
    rs("sex").value=sex
    rs("age").value=age
    rs("note").value=note
    rs.update
    rs.close
    conn.close
    set rs=nothing
    set conn=nothing

    response.write "记录添加成功!"
    end if
    rs.movenext
    wend
    你仔细看看,在while语句的第二次循环是不是数据库已经关闭了?看看蓝色部分代码。

    感谢曾经帮助过我和将要帮助我的人,我也会无私的帮助需要而且我能够帮助的人!
    2005-12-29 10:29
    冰镇柠檬汁儿
    Rank: 16Rank: 16Rank: 16Rank: 16
    来 自:北京
    等 级:版主
    威 望:120
    帖 子:8074
    专家分:6657
    注 册:2005-11-7
    得分:0 
    wxhwxh聪明!楼主你应该在页面结束的时候再关掉数据库连接,不要太着急关。

    本来无一物,何处惹尘埃
    It is empty at all here, Why pm 2.5 is so TMD high!
    2005-12-29 11:14
    dzt0001
    Rank: 13Rank: 13Rank: 13Rank: 13
    等 级:蒙面侠
    威 望:5
    帖 子:1281
    专家分:4998
    注 册:2005-10-12
    得分:0 
    很奇怪,为什么要有
    rs.movenext
    wend
    ???????????

    ----我怎能在别人的苦难面前转过脸去----
    2005-12-29 11:18
    wxhwxh
    Rank: 1
    等 级:新手上路
    帖 子:139
    专家分:0
    注 册:2005-11-19
    得分:0 
    其实他的这段代码思路本来就是有点问题的,不过每个人都有自己的方法嘛,只要能达到目的地就是了,楼上的你说对吗?

    感谢曾经帮助过我和将要帮助我的人,我也会无私的帮助需要而且我能够帮助的人!
    2005-12-29 11:23
    wxhwxh
    Rank: 1
    等 级:新手上路
    帖 子:139
    专家分:0
    注 册:2005-11-19
    得分:0 
    <%
    name=request.form("name")
    sex=request.form("sex")
    age=request.form("age")
    note=request.form("note")
    set conn=server.createobject("adodb.connection")
    conn.open "driver={microsoft access driver (*.mdb)};dbq="&server.mappath("sj1.mdb")
    set rs=server.CreateObject("adodb.recordset")
    sqlstr="select * from test where name='"&name&"'"
    rs.open sqlstr,conn,1,3
    if rs.eof then
    rs.addnew
    rs("name").value=name
    rs("sex").value=sex
    rs("age").value=age
    rs("note").value=note
    rs.update
    response.write "记录添加成功!"
    else response.write "用户名已被占用!"
    end if
    rs.close
    conn.close
    set rs=nothing
    set conn=nothing

    %>
    我觉得改成这样比较好。

    [此贴子已经被作者于2005-12-29 11:28:57编辑过]


    感谢曾经帮助过我和将要帮助我的人,我也会无私的帮助需要而且我能够帮助的人!
    2005-12-29 11:28



    参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-40549-1-1.html




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

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