我有一个使用 POST 的表单和一个变量。
如何在 $_POST 中设置该变量,以便在提交表单后,我仍然可以获得该变量?
我刚刚尝试过
$_POST['variable'] = $variable;
最终变成空的。
您应该将该变量作为隐藏字段放入表单中,或者使用会话变量。
隐藏字段
<form method="POST" action="someactionpage.php">
<input type="hidden" name="my_var" value="<?php echo $myvar; ?>" />
<!-- ... -->
</form>
进去后得到它一些动作页面.php with $_POST['my_var']
提交表格时。
会话变量
只需将其存储在 $_SESSION 变量中
<?php
session_start (); // Just once at the beginning of your code
// ...
$_SESSION['my_var'] = $myvar;
?>
并在另一个页面上检索它
<?php
session_start (); // Same than before
// ...
echo $_SESSION['my_var'];
?>
附加信息
正如一些答案和评论中指出的那样,您应该始终检查变量是否存在,因为您无法保证这一点。只需使用事件函数 http://php.net/manual/fr/function.isset.php
if (isset ($_SESSION['my_var']))
// Do stuff with $_SESSION['my_var']
or
if (isset ($_POST['my_var']))
// Do stuff with $_POST['my_var']
正如所指出的Kolink https://stackoverflow.com/users/507674/kolink在注释中,用户可以轻松查看和更改字段值(通过 POST 发送)。因此,除非它确实是非关键信息,否则总是更喜欢会话变量。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)