【发布时间】:2013-12-03 22:07:14
【问题描述】:
您好,我的网站的会话 cookie 有问题,它是一个基本网站,但问题是当用户登录时,它只是开始循环并崩溃。
对此的任何帮助将不胜感激,不幸的是,这必须在标准 php 中完成,因为服务器不支持 PDO(不支持 pdo)。
这是我的 cookie 的代码 user_id 是主键,对于我的数据库中的 users 表来说是唯一的。
<?php
session_start();
if (!isset($_SESSION["user_id"])) {
header("location:bookTour.php");
} else {
if($_SESSION["user_level"] !=2){
header("location:failed.html");
}
}
?>
这是来自登录系统的代码,我知道它不安全。我还在开发中。 此外,此 cookie 来自用户无法使用的页面,除非他们使用某些信息登录。
<?php
session_start();
$server = "server";
$schema = "schema";
$uid = "uid";
$pwd = "pass";
$password =$_POST["txt_password"];
$email =$_POST["txt_email"];
mysql_connect($server , $uid , $pwd) or die ("server not found");
mysql_select_db($schema) or die ("Database not found");
$sql = "SELECT * FROM account WHERE email = '$email' AND password = '$password'";
$record = mysql_query($sql) ;
$row = mysql_fetch_array($record);
if(mysql_num_rows($record) == 0){
die(header("location: login.html"));
}else if(mysql_num_rows($record) == 1){
$row = mysql_fetch_array($record);
$_SESSION["user_id"] = $row["user_id"];
$_SESSION["user_level"] = $row["user_level"];
header("location:home.html");
}
else{ $row = mysql_fetch_array($record);
$_SESSION["user_id"] = $row["user_id"];
$_SESSION["user_level"] = $row["user_level"];
header("location: home.html");
}
mysql_close();
?>
【问题讨论】:
-
那么,您在哪里以及如何设置这些值?目前可以看出,如果设置了
user_id,但user_level不是2,它将始终被重定向。或者,如果user_id未设置,它也将始终被重定向。 -
哪个网站包含该代码?
-
还有这个代码是在什么文件中找到的?
-
别告诉我代码在 bookTour.php 上