时间:2021-07-01 10:21:17 帮助过:7人阅读
为什么表单提交之后session的值会是post传过去的值呢?
换个名字都可以正常,唯独用verify会出现这种现象
为什么表单提交之后session的值会是post传过去的值呢?
换个名字都可以正常,唯独用verify会出现这种现象
这很可能是PHP的一个Bug。
因为$_SESSION中的变量保存使用的是引用,当register_globals设置为on的时候,如果全局变量中有名字和$_SESSION中的变量名一样(比如你的代码中的$verify变量和$_SESSION['verity']这两个verify),PHP会有不可预料的行为发生。所以,你的这个问题不是POST过去的值传到了$_SESSION中,而是$_SESSION['verify']错误地引用了全局的$verify变量。
这在PHP的官方文档下用户的Comment中提到多次:
http://php.com/manual/en/reserved.variables.session.php
Post 的值是从表单传过去的