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

语法错误 (操作符丢失) ,添加文章出错

theend12 发布于 2010-06-16 17:19, 579 次点击
使用的EWEBEDITOR编辑器
当文章内容为:http://www.’/**/and/**/user>0--
这段时添加后就会出错:
Microsoft JET Database Engine (0x80040E14)
语法错误 (操作符丢失) 在查询表达式 ''   错误在22行

dim lm,bt,nr,mysql
fl = trim(request.form("fl"))
bt = trim(request.form("bt"))
nr = request.form("nr")
mysql = "insert into [h_artcle] (fl,title,nr,sj) values ('"&fl&"','"&bt&"','"&nr&"',now())"
conn.execute(mysql)            //这里是第22行

而在EWEBEDITOR编辑器讲上面内容转换为文本格式就可以添加成功,为什么?如何解决?


[ 本帖最后由 theend12 于 2010-6-16 17:50 编辑 ]
4 回复
#2
yms1232010-06-16 18:01
因为里面有些字符是特殊字符,直接添加会被认为是程序关键字而不被看作是字符串。
可以试试rs的办法
dim lm,bt,nr,mysql,rsart
fl = trim(request.form("fl"))
bt = trim(request.form("bt"))
nr = request.form("nr")
mysql = "select fl,title,nr,sj from [h_artcle]"
set rsart=server.createobject("adodb.recordset")
rsart.open mysql,conn,1,3
rsart.addnew
rsart("fl")=fl
rsart("title")=bt
rsart("nr")=nr
rsart("sj")=now()
rsart.update
rsart.close
set rsart=nothing

#3
theend122010-06-16 18:19
如果不用RS的办法,还有什么办法解决吗?

#4
yms1232010-06-16 21:51
对HTML代码进行编码Server.HtmlEncode或Server.UrlEncode
不过编码起来不会比这个省事。
#5
theend122010-06-17 10:13
感谢yms123 版主
1