简体   繁体   English

会话无效

[英]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. Oage从表中提取查询数据并设置为Session-Variables,第二页将其检索,将其插入新表中,然后重试。 Don't give any error, but don't work, why? 不要给出任何错误,但是不起作用,为什么?

In page one, session_start(); 在第一页中, 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); 您可以添加var_dump($_SSESION); In Page One , 在第一页中

And See What it will print of NULL Only Add session_start(); 并查看它将打印什么NULL仅添加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(); 问题很可能是缺少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. 在第二页中使用诸如print_r($_SESSION)var_dump($_SESSION)类的调试语句来查看天气是否携带需要在表中插入的数据。

  • off topic but important: don't use mysql_* functions. 题外话 ,但很重要: 不使用mysql_ *函数。 why? 为什么?

You need to add sessoin_start(); 您需要添加sessoin_start(); in page one 在第一页

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

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