- Chen
-
我在本机帮你测试了,建议及代码如下:
1、将数据库里【订单号】字段 改为英文
代码如下:替换del.asp即可
注意将代码中 两个 字段 替换为你修改过的英文字段
<%
Dim BID
BID=Trim(Request("BID"))
if Not(IsNumeric(BID)) then "如果地址栏传递的定单号不是数字
response.write"<script language="javascript">alert("账单号不合法!");history.back(-1);</script>"
response.End
end if
Set conn = Server.CreateObject("ADODB.Connection")
P1="Provider=Microsoft.Jet.OLEDB.4.0;"&"Data Source="&Server.MapPath("../common/DataBase/pgc.mdb")
conn.open p1
Set Rs=Server.CreateObject("ADODB.recordset")
sql="select * from [ddmxb] where 字段"="&BID&""
response.write sql
Rs.open sql,conn,1,1
if Rs.eof or Rs.bof then
Response.write"没有对应记录,或者记录已经被删除"
else
Conn.execute("delete * from [ddmxb] where 字段="&BID&"")
Response.write"删除成功!"
end if
Set Rs=nothing
Conn.close
set conn=nothing
%>
回答完毕,有问题请补充
- okok云
-
你数据库的订单号是什么类型的
如果是文本的话
下面这句
sql="select * from [ddmxb] where 定单号="&BID&""
要改成
sql="select * from [ddmxb] where 定单号=""&BID&"""
这句
Conn.execute("delete * from [ddmxb] where 定单号="&BID&"")
也改成
Conn.execute("delete * from [ddmxb] where 定单号=""&BID&""")
注意单引号
- 豆豆staR
-
a href="del.asp?BID=<%=Rs("定单号")%>" onclick="Javascript:return confirm("你确定要删除吗?");">删除</a>
该页连接到 del.asp?bid=定单号
del.asp页首先应该这样些
<%dim conn,connstr,db,startime
startime=timer()
db="../common/DataBase/pgc.mdb"
Set conn = Server.CreateObject("ADODB.Connection")
connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(db)
conn.Open connstr
sub closedb()
conn.close
set conn=nothing
end sub
"######################################################连接ACCESS数据库
set rs=server.createobject("adodb.recordset")
sql="select * from ddmxb where 订单号="""&bid&"
"###########################读取ddmxb表中订单号为连接过来的bid值的记录
rs.open sql,conn,3,2
"###########################打开为可读写删
rs.delete
"#########################删除检索的该记录
response.write "<script language="javascript">"
response.write "alert("删除成功!");"
response.write "location.href=""&request.servervariables("http_referer")&"";"
response.write "</script>"
"###########################删除成功并返回前一页
rs.close
set rs=nothing
%>
- 可可
-
Rs.open sql,conn,1,1
把后面那个1改成3
sql="select * from [ddmxb] where 定单号="&BID&""
这句,由于那个BID是数字型的,所以不用加后面的&""
Set Rs=Server.CreateObject("recordset")
sql="select * from [ddmxb] where 定单号="&BID
Conn.execute("delete * from [ddmxb] where 定单号="&BID)
If err.number<>0 then
Response.write"没有对应记录,或者记录已经被删除"
end if
Set Rs=nothing
Conn.close
set conn=nothing
- 贝贝
-
各位兄弟姐妹,是第十行出错了conn=server.createObject("adodb.connection")
原因是缺少对象.你以前是写java之类的语言的吧.
在ASP的VB中创建对象应该加Set关键字
这句话应该写成
Set conn = Server.CreateObject("Adodb.Connection")
对于普通变量如字符串可以直接写connstr = "I love You"