所有,我之前在论坛上发布了一个代码,没有人能够回答这个问题。 “注册”和“注销”都是在其他页面上带有值类型的按钮,这些页面链接到此页面代码,名为login.php
问题在于我不断获得未定义的索引。有没有办法更好地称呼它?
我有..
if ($_POST['submit']=="Sign Up") {
和..
if($_GET["logout"]==1 AND $_SESSION['id']) { session_destroy();
header("Location:logout.php");
}
答案 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中也意味着真实。