| 编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛
全能ASP/PHP/ASP.NET主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付赛孚耐:软件保护加密专家
身份认证令牌USB KEY   
共有 705 人关注过本帖
标题:[求助]将数据写入数据库失败
收藏  订阅  推荐  打印 
thbwn
Rank: 3Rank: 3
等级:中级会员
帖子:213
积分:2286
注册:2007-10-2
[求助]将数据写入数据库失败

请高手看看附件内文件代码,不知哪里的问题,“'将事件写入数据库”代码失灵似的,不能写入!!
'将事件写入数据库
    dim pos,pic,bfdate,cause,user,bfuser
    bfdate=now()
    pos=Request.Form("pos")
    pic=Request.Form("jzsel")
    cause=Request.Form("upwhy")
    user=prname
    bfuser=bbs94kk.myname
    Set rs= Server.CreateObject("ADODB.Recordset")
    sql="select * from KK_jzlog"
    rs.open sql,conn,1,3
    
    rs.AddNew
    rs("jz_pos")=pos
    rs("jz_level")=pic
    rs("jz_date")=bfdate
    rs("jz_why")=cause
    rs("jz_owner")=user
    rs("jz_user")=bfuser
    rs.update
    set rs=nothing
    conn.close
    set conn=nothing
这段的上一句:
conn.execute("update [KK_user] set jzdata='"&jzxg&"' where name='"&kname&"'")能将数据写入数据库!
附件: 只有本站会员才能下载或查看附件,请您 登录注册
搜索更多相关主题的帖子: 数据库  pos  cause  Form  
2008-2-21 15:03
craft001wen
Rank: 3Rank: 3
等级:中级会员
帖子:222
积分:2352
注册:2006-5-4

bfuser=bbs94kk.myname可能有错,你查一下
还有rs.AddNew
最好写成rs.AddNew()

2008-2-21 17:02
thbwn
Rank: 3Rank: 3
等级:中级会员
帖子:213
积分:2286
注册:2007-10-2
还是不行啊

我把代码做了精简贴出来,无论怎么的都不写入,用response.write""每项(共六项)都能显示出正确的结果!
response.write""&user&"、"&bfdate&"、"&pos&"、"&pic&"、"&cause&"、"&bfuser&""
<!--#include file="Admin_check.asp"-->
<%On Error Resume Next
Select Case Request.querystring("Action")
case"setp"
dim js1,prname,jzrs,jname,jid,jzname,jzid,jzpic,jzpicurl,jz1,jz2,jz3,jz4,jz5,jz6,jz7,jz8,jz9,jz10,jzdata,i,jzpicurl1
%>
<table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#F4F6FC" width="100%">
<%prname=replace(request.form("setpname"),"'","''")
if prname="" then%>
<form action="adminright_jzsetp.asp?action=setp" method="POST"><br><br>
  <tr>
    <td class=td2 width="100%" bgcolor="#F4F6FC" height="28">
    <p style="margin: 4">用户奖章设置</p></td></tr>
<td width="100%" height="28"><P style="MARGIN: 5px">请输入用户名:<input type="text" name="setpname" size="20"></p><P style="MARGIN: 5px"><input type="submit" value=" 确 定 " name="B1"> <input type="reset" value=" 重 置 " name="B2"></p></td></tr>
</form>
<%
else
set js1=conn.execute("select [jzdata] from [KK_user] where name='"&prname&"'")
if not js1.eof then
%>
<form action="adminright_jzsetp.asp?action=savepr" method="post">
<tr>
<td colspan=10 align="center">
你给?<font color="#FF00FF"><%=prname%></font>?<select size=1 name="pos">
<option value="颁发">颁发</option>
<option value="摘除">摘除</option>
</select>
了一枚<select size=1 name="jzwhy">

<%
set jzrs=conn.execute("select jzname,jzid from KK_jzdata")
response.write "<option value=0>请选择勋章</option>"
do while not jzrs.eof
jzname=jzrs("Jzname")
response.write "<option value="&jzrs("Jzid")
response.write ">"&jzname&"</option>"
jzrs.movenext
loop
jzrs.close
set jzrs=nothing
%>
</select>
勋章,执行理由是:<input type="text" name="upwhy" size=50></td>
</tr>
<tr><td colspan="10" align="center">
<input name="submit" type=submit value="更  新"><input size=45 name="picurl" type=hidden value="<%=jzpic%>">
<input size=45 name="jid" type=hidden value="<%=jid%>"><input size=45 name="prname" type=hidden value="<%=prname%>"></td></tr>
</form>
<%
else
call Alert("·该用户不存在!·返回重新填写")
end if
end if%>
</table>

<%
case"savepr"

'将事件写入数据库
    dim pos,pic,bfdate,cause,user,bfuser,ttrs
    bfdate=now()
    pos=Request.Form("pos")
    pic=Request.Form("jzwhy")
    cause=Request.Form("upwhy")
    user=Request.Form("prname")
    bfuser=bbs94kk.myname

    Set conn = Server.CreateObject("ADODB.Connection")
    conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&Server.MapPath("Data/tttooe.asp")
    set ttrs=server.CreateObject("adodb.recordset")
            sql="select * from KK_jzlog"
            ttrs.open sql,conn,1,3
            ttrs.addnew

    ttrs("jz_pos")=pos
    ttrs("jz_level")=pic
    ttrs("jz_date")=bfdate
    ttrs("jz_why")=cause
    ttrs("jz_owner")=user
    ttrs("jz_user")=bfuser

    ttrs.update
    set ttrs=nothing
    conn.close
    set conn=nothing

call alert("·更新用户奖章成功。")
%>
<%
Sub Alert(message)
    message = replace(message,"'","\'")
    Response.Write ("<script LANGUAGE='javascript'>alert('" & message & "');window.location.href='adminright_jzsetp.asp?action=setp';</script>")
    Response.End
End Sub
end select%>
[ 本帖最后由 thbwn 于 2008-2-21 22:17 编辑 ]

          人人为我,我为人人!
2008-2-21 20:59
craft001wen
Rank: 3Rank: 3
等级:中级会员
帖子:222
积分:2352
注册:2006-5-4

那你就换换用EXECUTE吧

conn.execute"insert into KK_jzlog(jz_pos,jz_level,jz_date,jz_why,jz_owner,jz_user)values('"&pos&"','"&pic&"','"&bfdate&"','"&cause&"','"&usere&"','"&bfuser&"')"

2008-2-26 14:06
qq359977465
Rank: 1
等级:新手上路
帖子:12
积分:222
注册:2007-6-20

你的数据库安全权限设置了没有?
2008-2-28 14:48
Kettyjin1983
Rank: 3Rank: 3
等级:中级会员
帖子:288
积分:3400
注册:2007-8-17

给个错误提示.
2008-2-28 15:25
dhdhzzw
Rank: 4
等级:高级会员
帖子:708
积分:7576
注册:2007-8-13

那有可能你的数据库表中这一列含有其它不能为空的表。。。。。而你又没有添加。。。还要注意字段的定义。如果从别的数据库中复制的表,字段定义最好和原来一样。。。。
2008-2-29 09:08
关于我们 | 广告合作 | 编程中国 | 清除Cookies | Archiver | WAP | TOP

编程中国 版权所有,并保留所有权利。鲁ICP备08000592号
Powered by Discuz, Processed in 0.062318 second(s), 9 queries.
Copyright©2004-2008, BCCN.NET, All Rights Reserved