新手请教ASP网页高手几个问题,关于Response.write和web数据库操作的

先来说Response.write的问题吧,这个比较急1.htm 就是一个表单,输入用户名密码的2.asp 接收 1.htm 传过来的数据,验证通过后转向3.asp3.asp 也就是管理员页面,内容是向数据库写入东西首先,上述3个网页的代码都是对的,经过多次测试都可以正常运行.但是我就发现这样一个问题,可以不用在1.htm 输入,也不用经过2.asp验证,只要发布后直接输入http://localhost:8085/3.asp就可以打开了~_~!好大一个BUG我就想到两个办法解决,第一个比较简单,2.asp跳转用的是服务器端脚本<%Response.Redirect("3.asp")%> 反正客户端看不到,我只要把3.asp的名字改的长一点,复杂点就可以了第二个办法比较彻底, 用Response.write输出3.asp的全部内容http://bbs.shudoo.com/viewthread.php?tid=1787721唉~说起来真是连绵无尽长又长了,这里又不能上传附件,看帖吧在2.asp里设一个session变量Session("ispost")="通过";然后在3.asp 里判断一个Session("ispost")是不是等于"通过"就行了;是的话执 您是这个意思?那天你叫我回去翻资料,我就翻书本去了然后查到Session的用法,我以为你说的是 Session_Onstart在3.asp里面用脚本判断并且阻止直接打开当前在相同目录里页面不管怎么用,现在第一个问题都算是解决了现在就是第二个操作数据库的问题感谢大家的热心与积极
2026年09月24日 11:00
有6个网友回答
网友(1):

你可以设一个session 变量,,
很简单,相信你看看资料就可以搞定了.
\
在2.asp里设一个session变量
Session("ispost")="通过";
然后在3.asp 里判断一个Session("ispost")是不是等于"通过"就行了;是的话执行下面的,不是的话,不执行下去

网友(2):

在2.asp验证通过的同时写 session("username") = 用户名
在3.asp文件里检测这个 session("username") 是不是合法

比如:
2.asp里
session("username") = username

3.asp里
if conn.Execute("Select * From [表] Where username = '"& session("username") &"'").fof then
Response.Write "没有登陆!"
Response.end
end if

为了更安全 可以把密码也放 session 里 一起判断

为防止session欺骗,最好还是验正一下用户信息

回复楼主:
第二个错误不是因为你说的那行,是因为他的上一行的引号用错了
Response.write("")
Response.write("<% for each f in fld.files %>")
就OK了

不明白的话 Hi 我

网友(3):

当验证正确时设置一下session("admin"),

session("admin")=trim(rs("admin_user"))
Session("admin_Name")=trim(rs("admin_Name"))
Response.cookies("admin")="X8876Hxk0"
session("admin")="ok"
session.Timeout=20
再在以后用到的页面看看这个session("admin")是不是空
if Session("admin")="" or Request.cookies("admin")="" or Session("admin_Name")="" then
Response.Write("")
Response.End()
end if
就可以了

网友(4):

其实是在3.asp里面没有进行身份认证
可以在2.asp里面设置session变量,在3.asp里面检查这个变量是否存在且正确,正确显示3.asp的页面,不正确转到1.htm

网友(5):

把3.asp 的代码 复制到2.asp的最下面

网友(6):

教你个小技巧,把2和3写到一起呢

if 1传来的数据不正确 then
response.end
end if
下面接着写写入数据库的部分

只要IF语句判断不成立,不可能写入。你烦什么烦,分拿来。
asp老东西了,五年前编过论坛社区什么的,不好玩。