我有一个查询,它接受用户的输入并在数据库中搜索。
现在,根据输入的不同,结果大小可能会有所不同。
查询
$sql = "SELECT * FROM `$drop` WHERE `Stop Name` = '$input'";
$result = mysqli_query($conn, $sql);
结果
$rows = $result->num_rows;
for ($j = 0 ; $j < $rows ; ++$j) {
$result->data_seek($j);
$row = $result->fetch_array(MYSQLI_NUM);
//Display Results
for ($j = 0 ; $j <= 124 ; ++$j) echo "<td>$row[$j]</td>";
}
这给了我一个未定义的偏移错误,当它们小于124个变量(可能显示的大多数变量)时。
我在代码中的何处添加@以忽略这些错误。
您不应该像那样简单地抑制错误。
相反,当你到达数组的末尾时停止循环:
for ($j = 0 ; $j < count($row) ; ++$j) echo "<td>$row[$j]</td>";
附带说明:两个循环使用相同的迭代器$j
。这不会像预期的那样奏效。