php 管理 session session

标签 php mysql session error-handling internal-server-error

我正在尝试使用 php 为我的网站创建一个管理员帐户。我正在使用以下代码,但收到“500 内部服务器错误”,我不知道我做错了什么。 我的 index.php 文件中有以下用于管理的 php 脚本。

<?php
session_start();
if(!isset($_SESSION["manager"])){
    header("Location: admin_login.php");    
    exit(); 
}

$id = preg_replace('#[^0-9]#i', '',  $_SESSION["id"]);
$manager = preg_replace('#[^0-9]#i', '', $_SESSION["manager"]);
$password = preg_replace('#[^A-Za-z0-9]#i', '', $_SESSION["password"]);

include "../scripts/db_connect.php";
$sql_str = mysql_query("SELECT * FROM admins WHERE userName = '$userName' AND password =       '$password' LIMIT 1");
$exist_Count = mysql_num_rows('$sql_str');

if($exist_Count == 0){
    header('location: ../index.php');
    exit(); 
}
?>

以下代码适用于 admin_login.php 文件,我要求用户登录

<?php
if(isset($_POST["userName"]) && isset($_POST["password"])){
    $manager = $_POST["userName"];
    $password = $_POST["password"];
    include "../scripts/db_connect.php";
    $results = mysql_query("SELECT id FROM admins WHERE userName = '$manager' AND password ='$password' LIMIT 1");

$existCount = mysql_num_rows($results);
if($existCount == 1){
    while($row  = mysql_fetch_array($results)){
        $id = $row["id"];   
    }
    $_SESSION["id"] = $id;
    $_SESSION["manager"] = $manager;
    $_SESSION["password"] = $password;
    header("Location: index.php");
    exit();
}
else{
    echo 'Invalid Information';
    exit(); 
    }

}
?>

最佳答案

您忘记在 admin_login.php 上添加 session_start()

<?php
session_start(); //<---------- Here
if(isset($_POST["userName"]) && isset($_POST["password"])){
    $manager = $_POST["userName"];
    $password = $_POST["password"];
    include "../scripts/db_connect.php";
    $results = ......
    //.... rest of your code............

关于php 管理 session session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21570567/

相关文章:

mysql - MySQL SELECT 中的比较

mysql - 缺少结尾,无法执行mysql交叉连接

java - org.hibernate.Session 和 org.hibernate.classic.Session 之间的区别

php - 删除内联样式php中的样式宽度图像

php - 如何获得 ISO 3166-1 兼容的国家代码?

PHP 动态裁剪和调整图像大小

php - 纯文本上的简单 HTML DOM str_replace

php - Symfony 1.4 session 随机丢失

windows - 为什么枚举 session 在 Windows 7 上有额外的好处?

php - mysql不等于不工作