为什么会报错儿?(在线等,急)

CPO 2004-04-07 11:21:32
在提交时就会报错,语法的错误吗?请各位帮忙

1. //index.asp

<%
set conn=server.createobject("adodb.connection")
conn.open "driver={microsoft access driver (*.mdb)};dbq="&server.mappath("db\db1.mdb")

us=trim(request.form("name"))
ps=trim(request.form("pass"))

exec="select * from user where user='"&us&"' and password='"&ps&"'"
set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,1

if not rs.eof then
response.redirect "default.htm"
else
response.redirect "return.htm"
end if

rs.close
set rs=nothing
conn.close
set conn=nothing
%>

2. //index.htm中表单的相关要素

<form method="POST" action="index.asp" name="form1">
<input type="text" name="name" size="20">
<input type="text" name="pass" size="20">

3. //可执行时就报错

错误类型:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E21)
ODBC 驱动程序不支持所需的属性。
/web/index.asp, 第 10 行

为什么啊,在线等,请各位帮忙,谢谢
...全文
5 点赞 收藏 7
写回复
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
CPO 2004-04-07
第十行:

set rs=server.createobject("adodb.recordset")

怎么会报错儿呢?
全部ASP在楼顶,大家看看
安全问题回来再说,先解决这个吧,谢谢
回复
zl13 2004-04-07
sql语句报错,把sql语句放在查询分析器里看执行一下看看,
还有,你这么验证用户名程序会有漏洞
回复
sxsgssgs 2004-04-07
??
回复
sxsgssgs 2004-04-07
第10行,贴出来。
回复
qzriso 2004-04-07
sql="select * from user where user='"&us&"' and password='"&ps&"'"
set rs=server.createobject("adodb.recordset")
rs.open sql,conn,1,1
回复
exec="select * from user where user='"&us&"' and password='"&ps&"'"

如果数据库\表名\字段名等都确保正确的话改动上句为
exec="select * from [user] where [user]='"&us&"' and password='"&ps&"'"

user是一个预留关键字好像~~~
回复
CPO 2004-04-07
我顶
回复
发动态
发帖子
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
社区公告
暂无公告