【问题标题】:After using a form POST how can I store the variable in session?使用表单 POST 后,如何将变量存储在会话中?
【发布时间】:2015-06-25 20:24:42
【问题描述】:

这可能吗?我已经使用表单帖子发送了一个值并在 php 中检索,但如果我刷新它就会消失。这个可以保存吗?

【问题讨论】:

  • 点赞:$_SESSION['value']=$_POST['value']
  • 只需将帖子数组存储在会话中,您就可以在任何地方访问。

标签: php variables session post store


【解决方案1】:

是的,您可以将其存储在SESSION。请阅读以下代码:-

<?php
// Start the session
session_start();
?>
<!DOCTYPE html>
<html>
<body>

<?php
// Check Post variables are available
if(isset($_POST['username']))
{
    echo $_POST['username']." Username found in form <br />";
    // Set session variables
    $_SESSION["username"] = $_POST['username'];
    echo $_SESSION["username"]." stored in session <br />";;
}
else
    echo 'No, form submitted. Your old stored username was '.$_SESSION["username"];
    //echo 'No, form submitted.';
?>

</body>
</html>

wordpress开始会话

在你的functions.php中写下代码

function register_my_session()
{
    if( !session_id() )
    {
        session_start();
    }
}

add_action('init', 'register_my_session');

【讨论】:

  • 一旦我重新加载页面,该值就会消失。会话开始是否必须特别位于最顶部
  • 是的@jord49,您必须在页面顶部开始会话。
  • 意识到它不在页面顶部,因为我使用的是 Wordpress,因此已将会话开始移动到标题中,但它仍然不记得该值。如果我刷新没关系,但如果我重新加载它就会消失。
  • 在最顶部,然后再往下 $_SESSION['newsession']=$_POST['username']; $hello = $_SESSION["newsession"];回声 $hello;
  • 谢谢,但它仍在重置。标头: 然后你在上面添加了我的变量名的代码
【解决方案2】:
// set session to start
/*session is started if you don't write this line can't use $_Session  global variable*/
session_start();


$_SESSION["newsession"]= $value;
$_SESSION['post_session'] = $_POST;

您可以查看会话文档 http://php.net/manual/en/reserved.variables.session.php

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-04-17
    • 1970-01-01
    • 2017-10-07
    • 2020-03-12
    • 1970-01-01
    • 2021-02-01
    • 1970-01-01
    相关资源
    最近更新 更多