繁体   English   中英

如何从另一个PHP页面调用PHP变量

[英]How to call php variable from another php page

嗨,我有PHP表单页面的三个步骤,Form1用户将填写数据并将此变量带到Form2页面并执行Database {Insert,Update}。然后,Form2再次传递其变量(用户将其填写)以及Form1变量我的问题是如何将Form1变量传递给Form3。

表格2

//variable from Form1
$calendar_id_val = $_GET['calendar_id']; 
$calendar_name = $_GET['$calendar_choose_name'];
$calendar_type = $_GET['calendar_type'];

然后从数据库中选择Perfrom,并将结果显示到Form2中。在用户选择并填充Form2之后,将变量传递到Form3中。

表格3

$current_month =  $_GET['month']; //Variable from Form2

我尝试用SESSION调用Form1变量

$_SESSION['calendar_id_val'] = $_GET["calendar_id_val"];
$calendar_id = $_SESSION['calendar_id_val'] ; 

但这行不通。 如何从Form3调用Form1变量。 我使用GET方法。

您似乎不太了解变量在内存中保留的时间。 在PHP中,脚本完成后,该脚本分配的每个内存都将释放,因此$calendar_id_val不再位于内存中。
如果您想在下次用户发布表单(下一个请求)时使用表单中的值,那么您已经中途了,请尝试:

session_start();
$calendar_id_val = $_GET['calendar_id'];
$_SESSION['calendar_id_val'] = $calender_id_val;

在使用会话之前,必须始终调用session_start 假设您在处理完第三种形式后无需保留数据,那么session_destroy值得一看。 但是无论如何,在将数据存储到会话中之后,只要会话有效,就可以使用id值。 有关更多会话,请查看手册
您也可以使用Cookie。 由于您使用的是GET,因此我认为您无论如何都不会传递任何敏感或关键数据, 因此setcookie也可以完成这项工作。 然后,使用$_COOKIE超级全局$_COOKIE引用这些值。

请注意,建议使用会话,因为会话存储数据在服务器端,而cookie存储在客户端计算机上。 这使它们容易受到攻击(可以调整)和不可靠(客户端可以禁用/拒绝您的cookie)

和往常一样,如果我没有链接到我提到的所有功能,请访问http://www.php.net/<functionName>了解详细信息

session_start(); 进入页面顶部1行1列

session_start();
$calendar_id_val = $_GET['calendar_id'];
$_SESSION['calendar_id_val'] = $calender_id_val;

您应该在使用会话之前开始会话。

像这样在form1页面中分配会话变量

session_start();
$_SESSION['calendar_id_val'] = $_GET["calendar_id_val"];
$calendar_id = $_SESSION['calendar_id_val'] ; 

并像这样在form2页面中访问会话变量

session_start();
echo $_SESSION['calendar_id_val'];

您可以尝试将其声明为全局。

global $a;
$a = $_GET['really'];

暂无
暂无

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

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