这是我的PHP代码,在第15行抛出未定义索引“ title”的错误。
<?php
// connect to the database
$con = mysqli_connect("localhost","root","","ecommerce");
// getting the categories
function getCats(){
global $con;
$get_cats = "select * from categories";
$run_cats = mysqli_query($con, $get_cats);
while ($row_cats = mysqli_fetch_array($run_cats)){
$cat_id = $row_cats['cat_id'];
// Notice: Undefined index: title in D:\wamp64\www\ecommerce\functions\functions.php on line 15
//This is the line causing the error
$cat_title = $row_cats['title'];
echo "<li><a href ='#'>$cat_title</a></li>";
}
}
?>
通过查看我的错误消息,我知道错误在这里:
$cat_title = $row_cats['title'];
答案 0 :(得分:0)
根据您的评论,您的数组结构如下:
Array ( [0] => 5 [cat_id] => 5 [1] => Ear Phones [cat_title] => Ear Phones )
我认为您打错了字,您可能打算这样做
$cat_title = $row_cats['cat_title'];
相反,您是错误地这样做的:
$cat_title = $row_cats['title'];
答案 1 :(得分:0)
$row_cats['title'];
未定义索引表示给定数组$ row_cats中没有标题索引。打印时必须要空了。
echo "<li><a href ='#'>$cat_title</a></li>";
您可以采取哪些措施消除错误,可以设置条件。
if(isset($row_cats['title'])){
$cat_title = $row_cats['title'];
echo "<li><a href ='#'>$cat_title</a></li>";
}
为什么我也将回声部分放入我的病情中。因为如果不将其放入其中,则会在未定义的变量$ cat_title下方出现另一个错误。
您也可以这样做
if(isset($row_cats['title'])){
$cat_title = $row_cats['title'];
}
echo "<li><a href ='#'>";
if(isset($cat_title)){ echo $cat_title; }
echo "</a></li>";