MySql,PHP错误处理


MySql,PHP error handling

我有一个查询,它接受用户的输入并在数据库中搜索。

现在,根据输入的不同,结果大小可能会有所不同。

查询

$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。这不会像预期的那样奏效。