可能重复:
PHP: “Notice: Undefined variable” and “Notice: Undefined index”
第一次在这里提问。我正在努力创建一个小型的,原始的论坛。我将它基于this:在需要的地方进行更改。
到目前为止,我已经设置了数据库以及所有这些。现在我正在尝试修复view_topic.php并返回"Notice: Undefined index: id" on line 30 something.
这是第30行:$id=$_GET['id']
;
答案 0 :(得分:2)
在访问之前,您应确保id
是有效索引。
$id = isset($_GET['id']) ? $_GET['id'] : null;
答案 1 :(得分:1)
注意:未定义的索引:
这意味着一段代码试图访问不存在的数组元素。
所以,例如:
$myArray = Array(); // an empty array
echo $myArray['id']; // print 'id' element
// ^^ Oops! No such element yet!
$_GET
数组包含查询字符串中的参数,这是请求网址的?id=1
部分。
在URL中提供'id'
时,您需要找出为什么这不包含键id
的元素,然后让您的代码决定在此值的情况下该怎么做缺少,使用isset
或array_key_exists
和if
语句等功能。
如果您的代码在没有有效id
值的情况下无法继续,则很可能会提供更有用的错误消息并终止脚本。
答案 2 :(得分:0)
您确定网址中是否存在id=
?尝试在代码顶部附近添加以下内容。
var_dump($_GET);
var_dump将有关变量的信息转储到您的屏幕。在这种情况下,它将显示从您的表单发送的所有GET
数据。这是一种调试技术,因此您可以查看代码是否正在接收您所期望的内容。如果表单使用method="post"
且id
是表单中的字段,则您需要使用$_POST['id']
或$_REQUEST['id']
来访问它。