unable to get $_SESSION variable

前端 未结 3 652
难免孤独
难免孤独 2021-01-12 04:56

\"this
In Log-in.php I have

  $email=$_POST[\'email\']; 
  $pass=$_POST[\'         


        
相关标签:
3条回答
  • 2021-01-12 05:17

    Set this code in login.php :

    session_start();
    $email = $_POST['email'];
    $pass = $_POST['pass'];
    $_SESSION['type'] = 'user';
    $_SESSION['email'] = $email;
    $_SESSION['pass'] = $pass;
    header('location:./connect.php');
    

    And this one in connect.php :

    session_start();
    @mysql_connect('localhost', 'root', '') or die("ERROR in SERVER");
    @mysql_select_db('module') or die("ERROR IN DATABASE");
    $_SESSION['start'] = time(); // taking now logged in time
    if (!isset($_SESSION['expire'])) {
        $_SESSION['expire'] = $_SESSION['start'] + (60 * 60);
    }
    $now = time(); // checking the time now when home page starts
    if ($now > $_SESSION['expire']) {
        session_destroy();
        header('location:./login/login.php');
    }
    if (isset($_SESSION['email']) && !empty($_SESSION['email']) &&
            isset($_SESSION['pass']) && !empty($_SESSION['pass']) &&
            isset($_SESSION['type']) && !empty($_SESSION['type'])) {
    
        $email = $_SESSION['email'];
        $pass = $_SESSION['pass'];
        $type = $_SESSION['type'];
    
        // admin login //
        if ($type == 'admin') {
            $admin = mysql_query("SELECT * FROM `admin` WHERE `email`='$email'");
            $res = mysql_fetch_array($admin);
            if ($email == "" || $pass == "" || $email != $res['email'] || $pass != $res['pass']) {
                session_destroy();
                header('location:./login/login.php');
            }
        }
    
        // user login //
        if ($type == 'user') {
            $user = mysql_query("SELECT `id` FROM `users` WHERE `email`='$email' AND `status`='1'");
            $useres = mysql_fetch_array($user);
            // $trail = $useres['date'];
            //  $time = explode("/",$trail);
            if ($email != $useres['email'] || $pass != $useres['pass']) {
                session_destroy();
                header('location:./login/login.php');
            }
        }
    
        // agent login //
        if ($type == 'agent') {
            $agent = mysql_query("SELECT `id` FROM `sale_agents` WHERE `email`='$email'");
            $agentres = mysql_fetch_array($agent);
            if ($email != $agentres['email'] || $pass != $agentres['pass']) {
                session_destroy();
                header('location:./login/login.php');
            }
        }
    } else {
        header('location:./login/login.php');
    }
    

    I hope this will help you.

    0 讨论(0)
  • 2021-01-12 05:31

    session_start();

    $_SESSION["user"] = $result['full_name'];
    $_SESSION["user_id"] = $result['user_id'];
    $_SESSION["website_type"] = $result['user_id'];
    

    // this is my code ... // i cant access in another page ..

    // second page enter code here session_start(); // print_r($_SESSION);

        echo $_SESSION['user'];
        echo $_SESSION['user_id'];
        echo $_SESSION['website_type'];
    
    0 讨论(0)
  • Sessions Step By Step

    1. Defining session before everything, No output should be before that, NO OUTPUT

      <?php
      session_start();
      ?>
      
    2. Set your session in a page and then you have access in that, for example this is page 1.php

      <?php
         //This is page 1 and then we will use session that defined from this page:
          session_start();
          $_SESSION['email]='email@example.com';
      ?>
      
    3. Using and Getting session in 2.php

       <?php
         //In this page I am going to use session:
        session_start();
        if($_SESSION['email']){
        echo 'Your Email Is Here!  :) ';
        }
       ?>
      

    NOTE: Comments don't have output.


    Maybe answer to your question:

    I think you are not setting session, and because of that PHP doesn't know that session variable.

    Your login should be like this

      <?php
      session_start();
      $email=$_POST['email']; 
      $pass=$_POST['pass'];
      $_SESSION['type'] = 'user';
      $_SESSION['email'] = $email; 
      $_SESSION['pass']=$pass; 
      header('location:./connect.php');
      ?>
    
    0 讨论(0)
提交回复
热议问题