我有一个登录系统。然后,用户进行登录,他可以访问私人资料(个人资料)。会话的最佳做法 - 登录
我需要认识到用户做了登录才能得到他的东西。所以,我需要这样的:$nameUser=$_SESSION['u_name']
是否正确?那么我可以做这样的查询:
Select photo*from tablePhotos where name= $nameUser
。
我拥有的代码已被占用,还是存在安全问题?
它表明为每个会话生成一个session_id有意义吗?什么是“规则”?
我没有与会议太多的经验......
<?php
session_start();
if(empty($_SESSION['u_name']))
header("Location:index.php");
if(isset($_GET['logout'])) {
session_destroy();
header("Location:emprego.php");
}
$name = $_SESSION['u_name'];
echo $name ;
echo "<a href='secure.php?logout'><b>Logout<b></a>";
?>
好,说实话,你的用户关联数据应该通过ID关联,所以不是存储完整的用户名,而是存储一个整数,这在你的表大小上更容易,并且如果索引正确,可以提供更快的查找。 – 2011-05-23 02:48:06
u_name是电子邮件。我认为当用户进行登录时,更容易检查数据库中的电子邮件和密码,然后在会话中存储电子邮件(这对每个用户都是唯一的)。 – user455318 2011-05-23 02:52:56
通常在登录时使用电子邮件和密码进行获取用户标识所需的查找。然后,您使用用户标识来查找用户关联的数据,这是因为我之前的评论中提到的原因。 – 2011-05-23 03:00:10