asp编程!在做一个更新内容的页面?出错了~怎么改?

来源:百度知道 编辑:UC知道 时间:2024/06/11 09:42:50
<%
dim hyear,hneirong
fyear = trim(request.Form("textfield1"))
fneirong = trim(request.Form("detailtext1"))
%>
<%
id = request.QueryString("id")
dim cnn,rst,ssql
set cnn = server.CreateObject("adodb.connection")
set rst = server.CreateObject("adodb.recordset")
cnn.connectionstring = "provider=microsoft.jet.oledb.4.0;data source="&server.MapPath("mydatabase.mdb")
cnn.open
ssql = "update dashiji set [year] = '" & fyear & "',[neirong] = '" & fneirong & "' where id =" & id
cnn.execute ssql,,adsmdtext
cnn.close
set cnn = nothing
%>
##################################
错误...................
错误类型:
Microsoft JET Database Engine (0x80040E14)
语法错误 (操作符丢失) 在查询表达式 'id =' 中。
/asp/bulletin_update.asp, 第 125 行
###################################
求高手怎么

你获取值的方式是不是有点问题?

fyear = trim(request.Form("textfield1"))
fneirong = trim(request.Form("detailtext1"))

id = request.QueryString("id")
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
request.QueryString 是通过链接处的变量 来获取的.
建议你改写成:

fyear = trim(request.Form("textfield1"))
fneirong = trim(request.Form("detailtext1"))

id = request.Form("id")

请做一个ID空值处理。这里根本没有取到值,所以会丢失了。。

if cnn.eof then

else

end if

楼上的不明白,请不要瞎说!

这个错误就是,ID没有取到值

if id<>"" 再操作

检查一下看这个id字段是不是数字型的,如果是文本型的要加单引号