我有一个使用POST的表单和一个变量.
如何在$_POST中设置该变量,以便在提交表单后,我仍然可以获取变量?
我试过了
$_POST['variable'] = $variable;
它最终是空的.
解决方法:
您应该将该变量作为表单中的隐藏字段,或使用会话变量.
隐藏的领域
并在提交表单时使用$_POST [‘my_var’]在someactionpage.php之后获取它.
会话变量
只需将它存储在$_SESSION变量中即可
session_start (); // Just once at the beginning of your code
// ...
$_SESSION['my_var'] = $myvar;
?>
并在另一页上检索它
session_start (); // Same than before
// ...
echo $_SESSION['my_var'];
?>
附加信息
正如在一些答案和评论中指出的那样,您应该始终检查变量是否存在,因为您无法保证这一点.只需使用isset function
if (isset ($_SESSION['my_var']))
// Do stuff with $_SESSION['my_var']
要么
if (isset ($_POST['my_var']))
// Do stuff with $_POST['my_var']
正如Kolink在评论中指出的那样,用户可以很容易地看到并更改字段值(通过POST发送).所以总是喜欢会话变量,除非它确实是非关键信息.
标签:php,variables,forms,post
来源: https://codeday.me/bug/20190728/1567000.html