【发布时间】:2014-05-08 09:47:21
【问题描述】:
我是否在此处遗漏了一些我看不到的内容会引发此代码的未定义索引错误?在测试未通过$_POST['sub'] 的functions.php 添加代码时,它会抛出下面的未定义索引错误,但是针对完全相同的POST 变量“sub”的相同isset() 测试在第494 行上方执行了大约12 次没有抛出错误。我错过了什么?
来自 PHP 的错误
注意:未定义的索引:sub in /home/path/public_html/dtest/includes/functions.php 在第 494 行
第 494 行代码
if (isset($_POST['sub']) && $_POST['sub'] == "ritem") {
$id = $_POST['ritemid'];
unset($_SESSION['cart']['items'][$id]);
header("Location: ".$_SERVER['HTTP_REFERER']."");
die();
} else {
echo $_POST['sub'];
}
【问题讨论】:
-
你得先用isset,再看是不是"ritem"
-
@Chitowns24 但他的错误是未定义的索引 sub - 我认为这不是全部代码
-
是的,我刚刚重新看了一遍我同意
-
@MikeB 这就是它的所有代码,但下面的答案是正确的 - 现在我从上到下查看它,该语句的 ELSE 部分应该已经删除了一段时间。看起来它被留在了那里。
-
这就是为什么存在行长限制和标准不允许单行控制结构的原因。干净的代码看起来像这样codepad.org/BTGPtnbE
标签: php isset undefined-index