将PHP Session变量保存到局部变量

时间:2017-03-02 14:54:36

标签: php session-variables

我有一个大问题,我用我的PHP脚本生成内容。我将一些text-input传递给我的生成脚本。此脚本将所有text-input放入$_SESSION变量。

例如:

$_SESSION[text1] = $text1;
$_SESSION[text2] = $text2;

依旧......

在生成的页面中,我获取$_SESSION个变量并将它们放到局部变量中。

例如:

$text1 = $_SESSION['text1']
$text2 = $_SESSION['text2']

依旧......

但是在我销毁会话(登录/注销系统的原因)之后,生成的网站上的所有内容都消失了。只有HTML标签仍然存在。这对我来说意味着,所有会话变量在销毁会话后都会变空。

我现在的问题是如何保存这些会话变量而不会在session_destroy();之后丢失它们?

Ps:我正在使用MySQL数据库,但我不是那么有才华。

2 个答案:

答案 0 :(得分:2)

会话var在session_destroy之后被销毁,它是如何工作的。你可以在mysql DB中保存你想要的东西,文件(json格式),mongodb,memcached,redis ... 您还可以将cookie用于简单和非安全var。 一个非常简单的事情是将其保存在文件中:

file_puts_content('filename.json',json_encode($_SESSION));

并将其取回

$_SESSION=json_decode(file_gets_content('filename.json'),true);

但是用数据库做它会好得多。

答案 1 :(得分:0)

解决方案可能是将它们存储在MySQL数据库中。 使用PDO连接器在表中插入行:[Doc Here]

并插入如下:

INSERT INTO my_table(`var1`,`var2`,`var3`) VALUES($val1,$val2,$val3);

申请的背景是什么?