我正在通过 textarea 将图像文件名传递给 php 脚本,以查找有关 mysql db 中每个图像的信息。问题是我试图输出在 mysql db 中找不到的那些图像文件名,并通知用户哪些图像文件名未在 mysql db 中找到mysql。我当前的代码无法在 db 中输出那些丢失的记录,但它正确输出了有关在 db 中找到的那些图像的信息。谁能告诉我我做错了什么?
foreach ($lines as $line) {
$line = rtrim($line);
$result = mysqli_query($con,"SELECT ID,name,imgUrl,imgPURL FROM testdb WHERE imgUrl like '%$line'");
if (!$result) {
die('Invalid query: ' . mysql_error());
}
//echo $result;
if($result == 0)
{
// image not found, do stuff..
echo "Not Found Image:".$line;
}
while($row = mysqli_fetch_array($result))
{
$totalRows++;
echo "<tr>";
echo "<td>" . $row['ID'] ."(".$totalRows. ")</td>";
echo "<td>" . $row['name'] . "</td>";
echo "<td>" . $row['imgPURL'] . "</td>";
echo "<td>" . $row['imgUrl'] . "</td>"; echo "</tr>";
}
};
echo "</table>";
echo "<br>totalRows:".$totalRows;
最佳答案
您可以在 mysqli 中使用 mysqli_num_rows()
if(mysqli_num_rows($result) > 0){
while($row = mysqli_fetch_array($result))
{
$totalRows++;
echo "<tr>";
echo "<td>" . $row['ID'] ."(".$totalRows. ")</td>";
echo "<td>" . $row['name'] . "</td>";
echo "<td>" . $row['imgPURL'] . "</td>";
echo "<td>" . $row['imgUrl'] . "</td>";
echo "</tr>";
}
} else {
echo "<tr><td colspan='4'>Not Found Image:".$line.'</td></tr>';
}
关于php - 如何使用php检查mysql查询是否没有返回结果(未找到记录)?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20063068/