简体   繁体   中英

Session don't work

Page One

$query_user1 = mysql_query("SELECT * FROM xxx WHERE gruppo='$page' LIMIT $rand, 1");
        $estrai1 = mysql_fetch_array($query_user1);

        $id1 = $estrai1["id"];
        $name1 = $estrai1["name"];
        $surname1 = $estrai1["surname"];
        $img1 = $estrai1["img"];
        $voti1 = $estrai1["voti"];
        $_SESSION["code1"] = $code1;
        $_SESSION["voti1"] = $voti1;


        $query_user2 = mysql_query("SELECT * FROM xxx WHERE gruppo='$page' LIMIT $rand1, 1");
        $estrai2 = mysql_fetch_array($query_user2);

        $id2 = $estrai2["id"];
        $code2 = $estrai2["code"];
        $name2 = $estrai2["name"];
        $surname2 = $estrai2["surname"];
        $img2 = $estrai2["img"];
        $voti2 = $estrai2["voti"];
        $_SESSION["code2"] = $code2;
        $_SESSION["voti2"] = $voti2;
        $_SESSION["name1"] = $name1;
        $_SESSION["name2"] = $name2;
        $_SESSION["surname1"] = $surname1;
        $_SESSION["surname2"] = $surname2;

        $_SESSION["sec"] = $page;  

Page Two (Recive Page One)

<?php
session_start();
$id      = (isset($_SESSION["id_user"]))      ? $_SESSION["id_user"]      : null;  
$name3    = (isset($_SESSION["name_user"]))    ? $_SESSION["name_user"]    : null;
$surname3    = (isset($_SESSION["surname_user"]))    ? $_SESSION["surname_user"]    : null;
$sec = (isset($_SESSION["sec"])) ? $_SESSION["sec"] : null;
$voti2 = (isset($_SESSION["voti2"])) ? $_SESSION["voti2"] : null;
$voti1 = (isset($_SESSION["voti1"])) ? $_SESSION["voti1"] : null;
$code1 = (isset($_SESSION["code1"])) ? $_SESSION["code1"] : null;
$code2 = (isset($_SESSION["code2"])) ? $_SESSION["code2"] : null;
$name1 = (isset($_SESSION["name1"])) ? $_SESSION["name1"] : null;
$name2 = (isset($_SESSION["name2"])) ? $_SESSION["name2"] : null;
$surname1 = (isset($_SESSION["surname1"])) ? $_SESSION["surname1"] : null;
$surname2 = (isset($_SESSION["surname2"])) ? $_SESSION["surname2"] : null;

if (!empty($_SESSION["id_user"])) {
    $who = $name3 . " " . $surname3;
}

if (empty($code1)) {
    $code = $code2;
    $vote = $voti2+1;
    $name = $name2;
    $surname = $surname2;
} else {
    $code = $code1;
    $vote = $voti1+1;
    $name = $name1;
    $surname = $surname1;
}

unset($_SESSION["voti1"]);
unset($_SESSION["voti2"]);
unset($_SESSION["code1"]);
unset($_SESSION["code2"]);
unset($_SESSION["name1"]);
unset($_SESSION["name2"]);
unset($_SESSION["surname1"]);
unset($_SESSION["surname2"]);
unset($_SESSION["sec"]); 

I have two page, one set the variables and two recive them to save in a DB. Oage one extract query data from the Table and set in Session-Variables, Page two recive them, insert them into the new Table and after destry them. Don't give any error, but don't work, why?

In page one, session_start(); is missing. You need to add that.

Because Session Needs To Be Open In Page One Also,

You Can Add var_dump($_SSESION); In Page One ,

And See What it will print of NULL Only Add session_start(); To The Top OF Page One

Cause You Need To Make Sure That The Server Understand That You Still In The Same Scoop

The problem is most probably with missing the session_start(); statement in page one. Use debugging statements like print_r($_SESSION) or var_dump($_SESSION) in second page to see weather it carries the data you need to inserted in table.

  • off topic but important: don't use mysql_* functions. why?

You need to add sessoin_start(); in page one

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM