使 php 表单生成的变量在两个 php 文件中可用

make php form-generated variable available in two php files

我有一个表单,Form_hour.php,加载到浏览器中,允许用户 select 一小时。表单通过 action="get" 将变量 $hour 发送到使用 $hour 查询数据库的文件 View_A.php,然后将 View_A.php 加载到浏览器 window,显示 select 小时的数据。

在View_A中,有一个按钮允许用户切换到View_B。这个想法是,当用户单击 View_B 时,文件 View_B.php 会加载到浏览器中。 View_B.php,与 View_A.php 一样,使用相同的 $hour.

查询数据库

所以我想要的是同一用户selected 变量$hour 可用于View_A.phpView_B.php。即,如果用户 selects 6 a.m.,那么我希望 View_A 和 View_B 显示 6 a.m.

的数据

我认为 Form_hour.php$hour 发送到文件 common.php,然后在 View_A.phpView_B.php 中包含 common.php 会工作。但是我一直在 View_A.php.

中收到错误 "Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 4327 bytes)"

有人知道我做错了什么吗?

提前致谢!

如果我没记错的话,你可以像我下面写的那样做。
这会将用户定向到不同的页面,但会执行您想要的操作。


form_hour.php

<form action="View_A.php" method="post">
     your code
</form>

View_A.php

<?php
$_POST['hour'] = $hour
// query database and do something with it!
?>

<form action="View_B.php" method="post">
     <input type="hidden" name="hour" value=<?php print('"'.$hour.'"'); ?>>
     <input type="submit" ..... >
</from>

如您所问,如果您希望将表单作为变量。

<?php
$_POST['hour'] = $hour
// query database and do something with it!

$form = '<form action="View_B.php" method="post">
     <input type="hidden" name="hour" value="'.$hour.'">
     <input type="submit" ..... >
</from>';

//to show it just print/echo it.
print($from);
?>

View_B.php

<?php
$_POST['hour'] = $hour
// query database and do something with it!
?>