dnf霸域英豪套90版本:ASP中修改记录出错

来源:百度文库 编辑:高校问答 时间:2024/05/06 21:16:16
我先建了一个修改记录页面的表单,表单的提交文件为editnews.asp(运行这个文件时出错),出错提示为

非法赋值: 'time'

注:time 在数据库的表中为时间性字段。

editnews.asp代码如下:(大家帮我看看是哪儿出的错呀)
<%
title=replace(request.form("title"),"'","''")
laiyuan=replace(request.form("laiyuan"),"'","''")
zhuozhe=replace(request.form("zhuozhe"),"'","''")
time=replace(request.form("time"),"'","''")
connet=replace(request.form("connet"),"'","''")
if request.QueryString("id")<>"" and title<>"" and connet<>"" then
id=clng(request.QueryString("id"))
sql="update news set title='"&title&"',laiyuan='"&laiyuan&"',zhuozhe='"&zhuozhe&"',time=#"&time&"#,connet='"&connet&"' where id="&id
set rs=server.CreateObject("adodb.recordset")
on error resume next
rs.open sql,conn,1,3
if err then
response.write "更新时发生错误!"
else
response.write "更新成功!"
end if
rs.close
set rs=nothing
conn.close
set conn=nothing
end if
用的是ACCESS数据库
我改成[time]='"&time&"'和[time]=#"&time&"#都不行呀
还有一点不明白,为什么把time加上[]?

既然用set rs=server.CreateObject("adodb.recordset")了

那就在写入新数据的时候用rs("***")=***的形式,不要把更新写在sql里面,这样要排错也比较方便.

输出time看看它的值不是不正确的.

sql="update news set title='"&title&"',laiyuan='"&laiyuan&"',zhuozhe='"&zhuozhe&"',[time]=#"&time&"#,connet='"&connet&"' where id="&id

sql="update news set title='"&title&"',laiyuan='"&laiyuan&"',zhuozhe='"&zhuozhe&"',[time]='"&time&"',connet='"&connet&"' where id="&id

你用的是ACCESS数据库吗?如果是用SQL数据库。那么时间得用'号来取代#

你的输入日期是否全法呢?你可以先用isdate(time)来确定输入的time是否为日期。

你把time=replace(request.form("time"),"'","''") 中的time改就可以了,如:mytime=replace(request.form("time"),"'","''")
,后面的也同时改就OK,因为在ASP中time是获取现在的时间,是不允许做变量付值的。