帮忙看看这段代码错哪儿了,弄了一个星期了,还没弄出来,郁闷.
<!--#include file= "conn1.asp "-->
<html>
<head>
<meta http-equiv= "Content-Type " content= "text/html; charset=gb2312 ">
<title> 删除信息 </title>
</head>
<body>
<%
id = request.QueryString( "id ")
str = " delete from lyb where Id= "&id
conn.execute ( str)
response.Redirect( "显示留言.asp ")
set conn=nothing
%>
</body>
</html>
错误类型:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC SQL Server Driver][SQL Server]第 1 行: '= ' 附近有语法错误。
/TEST/删除留言.asp, 第 12 行
conn.execute ( str) 这是第12行.
------解决方案--------------------str = " delete from lyb where Id= "&id这一句改成
str = "delete from lyb where Id= ' "&id& " ' "试一下
楼主看一下你数据库里的字段是Id吗,还有就是输出一下看id 是值
------解决方案--------------------id = request.QueryString( "id ")
response.write(id) '看看有值吗 ?
‘ ( "显示留言.asp ") 不要用中文名
------解决方案--------------------发现楼主这样的代码很容易给人家sql注入哦^_^
------解决方案--------------------不要用 "id "做变量
------解决方案--------------------在最前面加上
<%response.Buffer=true%>
------解决方案--------------------肯定是id得到的值是空的
你这是从表单post方式提交的还是以什么方式提交到这里的,
response.write id
response.end
看看有没有值显示就知道了
------解决方案--------------------检查你的前一个页面。另外你想的文件名有问题,你看到哪个网页的文件名用中文取名了?
------解决方案--------------------你数据库ID类型错误,因此你在添加数据的时候ID字段为空值,应该是自动增加(自动编号)之类的吧。
------解决方案--------------------id列没有值怎么能够根据id列确定一条数据呢????
------解决方案--------------------上一页面
<a href= "删除留言.asp?id= <%=rs( "id ")%> "> 删除 </a>
生成页面后,查看源文件,看id=后面是否有值.
提交页:
<%
id = trim(request.QueryString( "id "))
'*******************
'增加判断
if isnumeric(id) then id = clng(id) else response.wirte ( "Error ") : response.end
'*******************
str = " delete from lyb where Id= "&id
conn.execute (str)
response.Redirect( "显示留言.asp ")
set conn=nothing
%>