php怎样实现多用户管理?

来源:百度知道 编辑:UC知道 时间:2024/09/22 04:18:27
我正在写一个php网站,刚刚学的,很多东西都不懂。
这次遇到的问题就是多用户管理的,就是比如说我的网站有N个用户注册,并且注册后他们能各自登陆对自己的资料进行自主管理或者修改。
注册很简单,已经搞好了,在开始设计登陆页面时就不知道继续该怎么做了。
我现在用的是这样的判断:
<?
session_start();
include '../conn.php';
$name = $_POST[username];
$password = md5($_POST[userpass]);

$lgsql="select * from user_info where username = '$name' and userpass = '$password'";
$lgexe=mysql_query($lgsql);
$lgresult = mysql_num_rows($lgexe);
//计算出有多少条记录同时吻合username和userpass(返回值也只有0条或者1条,我自己想来想去这么写的。)
//下边的是,如果返回值不为0,也就是说数据库里有同样的用户名和密码则登陆成功,我这个判断登陆的方法用是能用就是不知道有没有啥不妥。
else if($lgresult != 0) {
setcookie(); //到这里就不知道继续该怎样写了。。。原因写在后边。
$_SESSION[user] //或者不用cookie用session?那又该怎样做呢?
}
else {
echo "登陆失败";
}
?>
不知道该怎么继续写的原因:
从来没做过这样的多用户管理的网站啊!以前最多做的也就是新闻发布系统,只有一个管理员登陆的。所以cookie和session基本没接触过。现在就是两个地方搞不明白,首先一个是在修改用户资料页面怎样判断当前登陆的是哪个用户?
现在想这样写:setcookie("cookiename"

首先一个是在修改用户资料页面怎样判断当前登陆的是哪个用户?
----答:你在数据库里面加个字段,记录用户的类型的,然后登陆的时候用 cookie 或者 sessssion 记录他的用户类型。如 $_session['type']='admin'

然后就是,其实cookie很安全至少不像传说中的那样危险,这个你可以百度下别人的文章,一般情况下cookie是很难被修改的,所以考虑cookie的安全是必要的但是太过分了就没必要了。
其次,session保存在服务器不假,每个session都有一个唯一的id 你打印 session数组久知道,程序可以通过那个id判断session的所有者。

SESSION会为每个访问者分配一 ID,用来表示不同访问者,所以不会冲突。

所以我做的站是用COOKIE和SESSION两个一起来解决用户登陆的。。

还有甚者把SESSION挂上的数据库。。这种做法就更BT,更安全了(同时也更方便了。例如查在线人数)。。下次我改写网站,就准备用这方法。