ASP取下拉菜单值问题

程序如下:index.asp<selectname="selecttyp"class="STYLE29"id="selecttyp"><optionvalue="教师">... 程序如下:
index.asp
<select name="selecttyp" class="STYLE29" id="selecttyp">
<option value="教师">教师</option>
<option value="管理员">管理员</option>
<option value="学生">学生</option>
</select>

conn.asp
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<!-- #include file="Connections/conn.asp" -->
<%
set rs=server.createobject("adodb.recordset")
dim username
dim pwd
dim typ
username=request.Form("textfield1")
pwd=request.Form("textfield2")
typ=request.Form("selecttyp") 这里没有取到菜单项内的值,不知道是为什么?
if typ<>"" then
sql = "select * from userinfo where 用户名='"&username&"' and 密码='"&pwd&"' and 用户类别='"&typ&"'"
rs.open sql,conn,3,3
if rs.eof then
response.write (sql)
response.write typ
response.write "用户名或密码错误请重新出入!"
response.write "<a href='index.asp'>返回登陆页面</a>"
else if typ="学生" then
response.write "用户名正确!"
response.Redirect"xs.asp"
else if typ="教师" then
response.Redirect"js.asp"
else
response.Redirect"gly.asp"
end if
end if
session("xxname")=username
end if
end if
set rs=nothing
conn.close
set conn=nothing
%>

数据库绝对没有问题,因为我没有用户类型时测试通过!
用session("xxname")=request.Form("selecttyp") 这个也没有用
测试的时候总是显示:select * from userinfo where 用户名='admin' and 密码='admin' and 用户类别='Ա'Ա用户名或密码错误请重新出入!返回登陆页面
就是用户类型没有取到值,总是空格?请高手解决!
展开
 我来答
百度网友2d845ff
2009-12-10 · TA获得超过204个赞
知道小有建树答主
回答量:131
采纳率:0%
帮助的人:319万
展开全部
你好,你的问题已修正! index.asp这个文件没有问题,而是你的 check.asp这个验证登陆的页面有错误,修正后的代码如下:

<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />

<!-- #include file="Connections/conn.asp" -->

<%

dim username
dim pwd
dim typ

username=request.Form("textfield1")
pwd=request.Form("textfield2")
typ=request.Form("selecttyp")

set rs=server.createobject("adodb.recordset")
sql = "select * from userinfo where username='"&username&"' and password='"&pwd&"' and usersort='"&typ&"'"
rs.open sql,conn,1,1

if rs.eof then
response.write "用户名或密码错误请重新出入!"
response.write "<a href='index.asp'>返回登陆页面</a>"
else

if typ="学生" then
response.Redirect"xs.asp"
elseif typ="教师" then
response.Redirect"js.asp"
elseif typ="管理员" then
response.Redirect"gly.asp"
end if

session("xxname")=username

end if

rs.close
set rs=nothing

conn.close
set conn=nothing
%>
super_manager
2009-12-10 · TA获得超过698个赞
知道小有建树答主
回答量:248
采纳率:0%
帮助的人:321万
展开全部
username=request("textfield1")
pwd=request("textfield2")
typ=request("selecttyp")

不用Form试试!有时候是会出现现怪事的!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
dengsheng150
2009-12-10 · TA获得超过997个赞
知道小有建树答主
回答量:785
采纳率:0%
帮助的人:513万
展开全部
总是空格就说明你提交的表单没有值,检查你添加的那个列表菜单是否在你提交的<form></form>之内。应该就是你没有把列表放进你提交的表单内,提交后当然接收不到值。小问题,应该检查清楚。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
vingoshi
2009-12-10 · 超过103用户采纳过TA的回答
知道小有建树答主
回答量:337
采纳率:0%
帮助的人:281万
展开全部
你的FORM表单是什么方法啊?是不是POST方法,而且ACTION动作指定页面是不是执行数据操作的这个页面的?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友06a556c17
2009-12-10 · 超过77用户采纳过TA的回答
知道小有建树答主
回答量:364
采纳率:0%
帮助的人:214万
展开全部
typ=request.Form("selecttyp") 这里没有取到菜单项内的值,不知道是为什么?
response.write typ
看那个有输出
设TT=request.Form("selecttyp")
response.write TT
看那个有输出
设UU=request("selecttyp")
response.write UU
看那个有输出
那个有,用那个
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式