在使用非管理员表查看页面后,会话正在关闭

时间:2014-07-01 04:47:44

标签: php mysql

我一直在模板网站上工作,一切都很好,直到我的主机提供商将服务器更新到php 5.4。所以我认为我的问题出在php.ini的某处,但是当我登录网站的管理中心时一切都很好。我有四个页面,会话可以正常工作,一个页面拉动产品进行查看和编辑。我可以整天在管理中心的常规页面之间来回切换,但是当我点击(查看/编辑)链接时,它会显示产品,但是当我点击任何其他链接后,它会终止会话。

在php.ini之外的另一个地方,我能想到的另一个地方可能是我的login_session.php,我将其包含在管理员的每个页面中。这是该页面:

    <?php 

    session_start();

    if(!isset($_SESSION["manager"])){

    header("location:admin_login.php");

    exit();

    } 

    //BE SURE that this manager SESSION value is in fact in the database

    $managerID = preg_replace('#[^0-9]#i',"",$_SESSION["id"]);//filter everything but       numbers and letters

    $manager = preg_replace('#[^A-Za-z0-9]#i',"",$_SESSION["manager"]);//filter   everything but numbers and letters

    $password = preg_replace('#[^A-Za-z0-9]#i',"",$_SESSION["password"]);//filter   everything but numbers and letters

    //Run mySQL query to be sure that this person is an admin and that their password   session var equals the database information

    //connect to the mysql database

    include"../storescripts/connect.php";

    $sql = mysqli_query($myConnection,"SELECT * FROM admin WHERE id='$managerID' AND   username='$manager' AND password='$password' LIMIT 1");

     //query the person

    //--------MAKE SURE PERSON EXISTS IN DATABASE-------

    $existCount = mysqli_num_rows($sql); //count the row nums

    if($existCount == 0){ //evaluate the count

     echo "Your login session data is not on record in the database. <a   href=\"logout.php\"><strong>BACK TO LOGIN</strong></a>";

    exit();

    }
    ?>

1 个答案:

答案 0 :(得分:0)

它现在正在运作。这实际上是php.ini升级的问题。我联系了我的主机提供商,并告诉他们问题,他更新了php.ini的一部分,但他对他更新的部分真的含糊不清。

相关问题