asp代码求教高手解疑

来源:百度知道 编辑:UC知道 时间:2024/06/17 18:17:19
我想要帐号登陆系统自动辨别帐号是否是管理员帐号,以下是代码,哪里不对请详细说明,万分感激!!
<!--#include file="login_conn.asp" -->
<%
name=trim(request.Form("username"))
pass=trim(request.form("password"))
if name="" or pass="" then
response.write "<script language=javascript>alert('请输入帐号或密码');history.back(-1)</script>"
end if
set rs=server.CreateObject("adodb.recordset")
sql="select * from person"
rs.open sql,db,1,3
If Not rs.EOF Or Not rs.BOF Then
if name=rs("pp_id") and pass=rs("pp_pw") then
session("power")="yes"
response.redirect "operation.asp"
rs.close
set rs=nothing
else
set rs2=server.CreateObject("adodb.recordset")
sql2="select * from admin"
rs2.open sql2,db,1,3
If Not rs2.EOF Or Not rs2.BOF Then
if name=rs2("zhanghao"

楼主这样写的话 代码我没测试不知道有没有其他错误 但逻辑肯定是不对的
if name=rs2("zhanghao") and pass=rs2("mima") then
session("qysession")="yes"
session("message")="yes"
name=rs2("zhanghao")是不代表比较所有记录的 只是比较了一条
这里的rs2肯定是只能代表一条记录了
登陆判断话应该获取用户名和密码 以此为条件去查找有没有符合条件的记录 而不是你写的这样先拿出所有数据 在比较有没有符合的
sql="select * from person where zhanghao=name and mima=pass "

我们没用你的数据库环境,所以不知道哪里有错,我们只能根据你计算机的错误提示,判断解决问题。
下次把错误提示也发上来
最反感代码长篇大论