Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 登录系统,每次重新加载时将您注销_Php_Mysql_Session_Login - Fatal编程技术网

Php 登录系统,每次重新加载时将您注销

Php 登录系统,每次重新加载时将您注销,php,mysql,session,login,Php,Mysql,Session,Login,这个问题困扰了我好一阵子,我就是想不出来。一旦用户尝试登录,他就被登录了。但一旦他加载了另一个页面,或者刷新了页面,他就会立即注销。真正奇怪的是,一旦我在XAMPP上本地测试它,它就可以正常工作,但当它在我的网页上运行时,它就不工作了。它们运行在几乎相同版本的PHP5.5.11(本地版)和PHP5.5.18(网页版)上。有人能告诉我出了什么问题吗?非常感谢您的帮助 从login.php $query = "SELECT * FROM user WHERE email='$email'

这个问题困扰了我好一阵子,我就是想不出来。一旦用户尝试登录,他就被登录了。但一旦他加载了另一个页面,或者刷新了页面,他就会立即注销。真正奇怪的是,一旦我在XAMPP上本地测试它,它就可以正常工作,但当它在我的网页上运行时,它就不工作了。它们运行在几乎相同版本的PHP5.5.11(本地版)和PHP5.5.18(网页版)上。有人能告诉我出了什么问题吗?非常感谢您的帮助

从login.php

      $query = "SELECT * FROM user WHERE email='$email' AND password='$passi' AND com_code IS NULL";
      $result = mysqli_query($mysqli,$query)or die(mysqli_error());
      $num_row = mysqli_num_rows($result);
      $row=mysqli_fetch_array($result);
      if( $num_row ==1 )
      {
       $_SESSION['user_name']=$row['username'];

        header("Location: index.php");


  }


  else
         {

   $message= "Wrong login message";
  }
从我的其他页面,检查用户是否登录:

 if($_SESSION['user_name'] == '') {
   die ("Please log in to see this page");

    } else {

        echo "Hey $_SESSION[user_name]!";
    }
我解决了这个问题。
我需要一个会话_start();在页面的顶部,但不是完全。我通过简单地放置session_start()来修复它;在绝对的顶部。谢谢:)

您从未使用
session_start()启动会话在每个PHP页面的顶部都有session_start()吗?我刚刚解决了这个问题。我让会议开始了();在一些顶部,但不是完全。我通过简单地放置session_start()来修复它;在绝对的顶部。谢谢:)你好,杰,事实上我已经做了,我只是没有给你看。您可以在这里看到:这会阻止这种SQL注入吗?