
正文
php数据分配不同账号 php分角色登录
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
php怎样实现多用户管理?
首先一个是在修改用户资料页面怎样判断当前登陆的是哪个用户?
----答:你在数据库里面加个字段,记录用户的类型的,然后登陆的时候用 cookie 或者 sessssion 记录他的用户类型。如 $_session['type']='admin'
然后就是,其实cookie很安全至少不像传说中的那样危险,这个你可以百度下别人的文章,一般情况下cookie是很难被修改的,所以考虑cookie的安全是必要的但是太过分了就没必要了。
其次,session保存在服务器不假,每个session都有一个唯一的id 你打印 session数组久知道,程序可以通过那个id判断session的所有者。
相关问答
Q1: 有20个有序数字php怎么平均分配给4用户并写入mysql数据库?
function getDivideNumber($number, $total, $index = 2) {
// 取平均数
$divide_number = floor($number / $total * pow(10, $index)) / pow(10, $index);
$divide_number = number_format($divide_number, $index, '.', '');
// 获取最后一个数字
$last_number = $number - $divide_number * ($total - 1);
$last_number = number_format($last_number, $index, '.', '');
// 拼装平分后的数据返回
$number_str = str_repeat($divide_number . ',', $total - 1) . $last_number;
return explode(',', $number_str);
}
$array = getDivideNumber(120, 3, $index = 0);
得到平均分配的数字数组,用遍历后入库
Q2: 如何实现php的安全最大化?怎样避免sql注入漏洞和xss跨站脚本攻击漏洞
使用php安全模式
服务器要做好管理,账号权限是否合理。
假定所有用户的输入都是“恶意”的,防止XSS攻击,譬如:对用户的输入输出做好必要的过滤
防止CSRF,表单设置隐藏域,post一个随机字符串到后台,可以有效防止跨站请求伪造。
文件上传,检查是否做好效验,要注意上传文件存储目录权限。
防御SQL注入。
避免SQL注入漏洞
1.使用预编译语句
2.使用安全的存储过程
3.检查输入数据的数据类型
4.从数据库自身的角度考虑,应该使用最小权限原则,不可使用root或dbowner的身份连接数据库。若多个应用使用同一个数据库,也应该为数据库分配不同的账户。web应用使用的数据库账户,不应该有创建自定义函数,操作本地文件的权限。
避免XSS跨站脚本攻击
1.假定所有用户输入都是“邪恶”的
2.考虑周全的正则表达式
3.为cookie设置HttpOnly,防止cookie劫持
4.外部js不一定可靠
5.出去不必要的HTML注释
6. 针对非法的HTML代码包括单双引号等,使用htmlspecialchars()函数。
Q3: php网站后台session设置用户登录权限,:我想做个分配不同用户登录后台的权限,只有admin才能用的栏目。
其他 可以用简单的方法来解决 在数据库用户表 添加一个字段来存储用户属性 你可以用1代表管理员 0代表普通用户 然后 用户登陆后 判断是0还是1 从而来控制他们访问的权限
Q4: php 不同用户登录
首先php数据分配不同账号,php数据分配不同账号你得把自己要做系统的权限设计好php数据分配不同账号,比如系统管理员是否可以登录会员页面(系统管理员有最高权限,那么登录会员和普通用户页面也应该可以),会员是否能登录普通用户页面(一般来说会员是可以登录普通页面的),好php数据分配不同账号了,接下来就是你的问题了:假设管理员可以登录余下两个页面,会员既能登录会员页面也能登录普通页面
第一个问题,选择abc之后提交,获取相应选择的选项:比如是普通会员,但是登录用户是管理员权限,那么你只要在根据选择的权限和用户权限判断是否有权限登录该页面,判断成功后跳转到相应页面
大致代码么,我简单写下:
$a = $_POST[登录选项];
$b = 用户权限(f_limi)用sql根据post过来的账号密码获取
if($a==0($b==0||$b==1||$b==2)){
跳转到普通用户页面(我记得php里location能实现)
}elseif($a==1($b==1||$b==2){
跳转到会员页面
}elseif($a==2$b==2){
跳转到管理员页面
}else{
echo“权限不足无法访问”;
}
第二个问题上面也解决了,不用另外给权限,判断的时候加个或就行了,规则自己建立好就行了
Q5: php登录之后如何根据帐号不同而显示不同的页面呢
其实很简单
分析:
我们要有一个权限字段来区分用户的权限等级,然后在我们验证完它的帐号密码之后是不是要进行页面跳转呢,我们就可以在它跳转的时候下手脚。
完成过程:
在完成登录验证之后,我们首先创建一个session来存放它的权限,把登录的时候查询到的这个用户的权限(也就是$row['level'])赋给session这样,然后我们只要再判断一下session变量的值是什么就可以输出对应的页面啦.
示例代码:
$_SESSION['admin']=$row['level'] ; //比如这样赋值,我们可以取得登录用户的权限值并且用session记录
if($_SESSION['admin']=="普通用户"){
header("text1.php"); //普通用户的页面
//echo"scriptalert('登录成功哦,您是普通会员!');location.href='text1.php'/script"
}else{
header("text2.php");//非普通用户的页面
//echo"scriptalert('登录成功哦,您是高级会员!');location.href='text2.php'/script"
}
//如果你的登录没有问题的话到这里我们的实验就成功啦,这里的代码要放在完成登录验证之后哦,也就是替换掉你原来的跳转就可以啦
//再补充一下(*^__^*) ,我们操作的是登录验证页(logincheck.php规范的名字应该就是这个。)
关于php数据分配不同账号和php分角色登录的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。







