PHP网页 帐号密码 认证 怎么保证权限?

感觉PHP查询mysql帐号、密码匹配挺简单的,
但如果我一个目录下,有很多网页,如何能设置不同帐号的访问权限? 1.php 2.php 3.php
是否通过SESSION把帐号、密码一步步传递,在mysql里面设置查询、写入权限?
补充问题:
一、帐号和密码放在session 是否只对PHP连接mysql的起作用?
即使不登陆也能看到很多页面信息?
二、仅仅mysql权限就行?
需不需要设置IIS权限?
只设置IIS就能实现功能,是不是就没必要用PHP登录?

感觉你好像理解的不太对。
首先数据库里不能存名文密码,一般用md5加密,这样最起码做到基本数据的安全。
其次,一般我们最多把用户id,姓名,身份 这几个数据放到session中。密码是不会放到session里面的。

我们的每一个单独的项目,比如说一个微博,一个学生成绩管理网,都需要登陆的。如果你的服务器目录里有这两个项目,那要注意的是 session【‘’】里面的键名最好不要重复。否则会让你两个程序有session混乱,就是我登陆了微博网站,建立了名[‘id’]这个session,而另一个网站也有一个叫id的session,这样就会导致学生成绩管理网不需要登陆也可以进入。一般正式服务器就放一个项目,可是我们自己在做项目的时候才会有这种问题。追问

session 里没有密码?那后面php怎么连接mysql的呢?

追答

用户输入用户名和密码
你把这两个变量(密码要经过md5转换),和数据库比对(这个方法很多很多,只要合理就行)
比对之后确定账户合法,
建立一个session,存入id,name,身份(这个可以没有,权限的控制方法很多)和状态。
之后的所有页面,只需要验证session就可以了。只要session存在,就可以继续正常的使用网页。
我也不太明白 php连接接mysql 和session有什么关系。

追问

哦 好高级的感觉 我不需要那么安全啊
php连接mysql 读取或插入数据库啊
需要帐号,密码
连接mysql的帐号,密码跟 网页登录用的帐号,密码,不是一回事?
比如
我对mysql的a用户进行了权限设置,网页登录也是a用户?

追答

我倒是不太明白了,我们开发的时候链接数据库的密码就一个,甚至很多开发的时候数据库都没有密码,因为就我们自己在用。
登陆网站是网站本身账户和密码,只是存在数据库里了。
链接数据库的时候,mysql_connet()把密码写在里面就不需要动了,基本上一个页面写一遍这个就够了……框架的话,只要写入配置文件也基本上不需要修改了。
你的数据库链接等等,作文源文件,一般用户是绝对看不见的,这点放心。
你要相信session的强大,只要这个用户登陆了,session创建成功,那这个用户除去意外就是这个他。只用他在关闭网页session才会被注销。

追问

嗯 我觉得你说的很对
但是既然mysql里面保存了帐号、密码,肯定可以根据不同帐号,对数据详细的权限管理,
在每个页面做session判断,这个仅仅靠session做不来吧,
我觉得权限设置都在数据库里面。

追答

嗯,至于网站的权限,比如成绩查看,成绩修改这两种完全不同权限的页面,就要根据数据库字段来判断了,你可以单独设置一张表来保存权限,至于具体怎么设计的表,看网站的复杂度。

这里有一个例子,这就是权限列表,第三个字段是可操作的页面,第四个字段是可操作的页面中的具体功能。不过你刚一开始不需要那么复杂。可以只判断页面的操作权限。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-03-28
你把这个session复杂化了,还有就是php链接mysql数据库没有用session来判断权限的,因为这个数据库的用户名密码有时候只有一个,如果你买虚拟主机的话有时候这个密码还不能修改。
第2个回答  2014-04-15
权限这东西,简单的,你可以在页面里判断if()...
复杂点的,建个role表 note表,关联一下 就行了

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网