我确定这是一个菜鸟问题,但我在$_POST
密码参数中得到了未定义的索引。
if ($_SESSION['Password'] == $_POST['Password']){
echo 'Hi 2 '.$_SESSION['Password'].'<br>';
}
如果我使用$_SESSION
或$_POST
进行以下操作,我会得到正确的回音线。
if (!empty($_SESSION['Password'])){
echo 'Hi 2 '.$_SESSION['Password'].'<br>';
}
两个变量都不能使用相同的参数吗?
答案 0 :(得分:0)
首先你应该了解什么是SESSION和POST变量
SESSION 用于存储会话变量,可以从任何PHP文档中访问整个会话。
POST 用于获取通过帖子发送的任何变量方法。
在第一个代码片段中,您正在查看天气 会话[&#39;密码&#39;] ==发布[&#39;密码&#39;] 并且您没有通过邮寄方法和帖子变量&#39;密码&#39;提供任何价值。在你的程序中没有定义为什么你得到一个未定义的错误。
因此,最好的方法是使用isset函数检查变量已定义与否的天气。
if(isset($_SESSION['Password']) && isset($_POST['Password'])){
if ($_SESSION['Password'] == $_POST['Password']){
echo 'Hi 2 '.$_SESSION['Password'].'<br>';
}
}
通过正确的声明提供POST [&#39;密码&#39;]的值,然后代码就可以了。 我想您知道如何为SESSION变量设置值,因为您正在将SESSION变量与POST变量进行比较。