GET POST错误

时间:2014-09-28 00:11:34

标签: php

所有,我之前在论坛上发布了一个代码,没有人能够回答这个问题。 “注册”和“注销”都是在其他页面上带有值类型的按钮,这些页面链接到此页面代码,名为login.php

问题在于我不断获得未定义的索引。有没有办法更好地称呼它?

我有..

if ($_POST['submit']=="Sign Up") {

和..

if($_GET["logout"]==1 AND $_SESSION['id']) { session_destroy();
        header("Location:logout.php");      
}

2 个答案:

答案 0 :(得分:0)

由于POST和GET变量必须都不能发送,所以请始终使用与此类似的方案:

$var = isset($_POST['fieldname']) ? $_POST['fieldname'] : null;
if ( !isset($var) )
{
    // errorhandling
}
else
{
    // proceed ...

您收到的错误表明您的POST和/或GET变量中至少有一个未设置或拼写错误。

答案 1 :(得分:0)

正如Axel指出的那样,使用isset()函数检查$ _POST是否具有“submit”的值,如果已设置,则可以按照您的方式访问该值。如果$ _POST没有该值,则意味着它没有被发送。

因此,在HTML中,检查按钮是否确实以这种方式调用,并且它位于标记内,并将ACTION属性和METHOD设置为POST。

与1比较时要小心,因为在PHP中也意味着真实。