【问题标题】:Is it possible to use a variable within a session to use in other pages?是否可以在会话中使用变量以在其他页面中使用?
【发布时间】:2014-07-12 21:31:58
【问题描述】:

我正在创建一个用于购买/销售的网站,并且我有一个硬编码的用户 ID,现在我想在其他会话中使用它,我该怎么做?

这是一个代码sn-p:

    //register.php - (assuming the below is in php brackets)
    function unique_id()
    {
         return substr(str_shuffle("ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"), 0, 6);
    }

    $cID = unique_id();

    session_start();
    $_SESSION[$cID] = $cID;

    //listing.php - (assuming the below is in php brackets & page that i'm trying to store data to)
    session_start();
    $cID = $_SESSION[$cID];

即使在与 register.php 进行会话之后,当我打开listing.php 时,我也会收到“注意:未定义变量:cID”。有谁知道我能做些什么吗?或者是否有人对创建唯一客户 ID 的功能有任何其他想法,我可以将其放入会话中?

【问题讨论】:

    标签: php session variables


    【解决方案1】:

    您的会话变量键应该是一个字符串,而不是您分配的变量的名称。

    session_start();
    $_SESSION['cID'] = $cID;
    
    //listing.php - (assuming the below is in php brackets)
    
    session_start();
    $cID = $_SESSION['cID'];
    

    【讨论】:

    • 当我尝试这样做时,我得到“通知:未定义索引:cID”
    • 如果你的 session_start() 在任何输出发送到浏览器之前都在两个页面上,你不应该得到那个。
    • 我只尝试过使用html表单输入的会话变量,这是第一次将它与函数一起使用,你认为这是我使用过的函数吗?由于没有来自用户的输入,系统会全部完成吗?
    • 您在上面发布的功能根本不会影响您的会话。事实上,我在您发布的代码中看不到任何会导致此问题的内容。
    • hmm,我尝试删除 register.php 中的会话代码并重新输入它,并对 Listing.php 做了同样的事情,它适用于你的方法!谢谢你的帮助:)
    猜你喜欢
    • 2017-05-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-10
    相关资源
    最近更新 更多