新微赢技术网

标题: 在同一页面,这段代码如何做成不同用户登陆,看到的select选项不一样呢? [打印本页]

作者: bgag    时间: 2010-1-10 05:34
标题: 在同一页面,这段代码如何做成不同用户登陆,看到的select选项不一样呢?
这段代码如何做成不同用户登陆,看到的select选项不一样呢?(class in(1,2)或者class in(2,3).....)
(我的 user 表里 有 user1、user2、use3 几个用户名,密码是 user1、user2、use3 )


代码如下:
<select name="newsclass" id="newsclass">
      <% '从newsclass表中读取新闻类别                                                                        
        Set Rs1 = Server.CreateObject("ADODB.RecordSet")
        Sql1="Select * From newsclass where class in(1,2) order by id asc"
        Rs1.Open Sql1,conn,3,3
        Do While not Rs1.EOF
        Response.Write "<option value=" & Rs1("class") & ">" & Rs1("title") & "</option>"
        Rs1.MoveNext
        Loop
        Rs1.Close
        Set Rs1=nothing
      %>
     </select>

有点类似后台管里 超级管理员和普通管理 看到的界面和权限不一至,但不同的普通管理员看到的 select 选项也不一样,该怎么做啊?
作者: 阿俊    时间: 2010-1-10 05:34
登录页面的功能是这样的:

首先,告诉用户:你登录成功了或者你登录失败了

这还不够,要赋予用户权限,比如把用户识别信息存到Cookie或者Session(preferred)中,这样在需要权限的页面,先从Cookie或Session集合中获取用户识别信息,如果没有当然就是没有权限了,如果有那么就按照得到的权限进行具体操作,比如打印选项啊之类的
作者: 忘记∽所有    时间: 2010-1-10 05:34
又学到东西了!谢谢!
作者: 緣妢_兲紸龍    时间: 2010-1-10 05:34
tianyu123 ,请问登陆 页面的代码该怎么写啊?  
作者: 帅精灵    时间: 2010-1-10 05:34
动网7的管理员后台就是另外一种方法了,用户表里“组”的字段直接存可用选项的id号集合,显示选项的时候就直接提取所有选项,或者用in的语句来显示。
作者: 魅力ぉ小猪ぎ    时间: 2010-1-10 05:34
我的数据库表:

user表:

id            user               pass        
1             user1              123            
2             user2              456           


newsclass 表:

id            title               class      
1             国内新闻             1            
2             国际新闻             2           

能否给出 登陆页面和显示页面的 关键代码啊详细代码~ 供小弟学下    感谢~
作者: 千年@之恋    时间: 2010-1-10 05:34
multiple1902 在 2008-6-29 09:04 的发言:

用户表里放个字段,说明一下这个用户属于哪个用户组。
选项表里放个字段,说明一下哪个组可以看到这个选项。

登录时取出用户所在的组,放到session里。
显示选项的时候读取选项表,得到用户能看到的选项们,构造 ...



您的方法好象更好啊~~ 感谢~

不过就现在这个,登陆页面该怎么写啊??比如登陆页面,如果不存在用户或者密码不正确就提示从新输入等等,如果正确就跳转到添加页面~~~是不是还要用到 session 啊? 我弄不清了~ )
给出代码供小弟学习下啊~~~  
作者: ★功夫小子★    时间: 2010-1-10 05:34
根据不同的用户,选择输出不同的select选项

Set Rs1 = Server.CreateObject("ADODB.RecordSet")
if 用户名字段="user1" then
Sql1="Select * From newsclass where class in(1,2) order by id asc"
elseif 用户名字段="user2" then
Sql1="Select * From newsclass where class in(2,3) order by id asc"
end if
Rs1.Open Sql1,conn,3,3
作者: 熾天使rose    时间: 2010-1-10 05:34
用 session 作个关联
作者: 单身中    时间: 2010-1-10 05:34
用户表里放个字段,说明一下这个用户属于哪个用户组。
选项表里放个字段,说明一下哪个组可以看到这个选项。

登录时取出用户所在的组,放到session里。
显示选项的时候读取选项表,得到用户能看到的选项们,构造select。

当然了,也不一定要放到session里。




欢迎光临 新微赢技术网 (http://bbs.weiying.cn/) Powered by Discuz! X3.2