I've been confused about why this wont work! My query executes perfectly fine in all aspects, but when I added the if check on the $row value, the echo message goes as expected (if there are no results), but the else will not kick when there is a match in my query??? Why is this not working? Someone please ease my pain and set me straight!!
$row = mysql_fetch_array($result);
if (!$row) {
echo "Sorry brah. Nothing matches your search criteria.";
} else {
$i = 1;
while($row = mysql_fetch_array($result)) {
echo "$i - " . $row['first_name'] . " " . $row['last_name'] . " - " . $row['address'] . "<br />";
$i++;
}
}
$row = mysql_fetch_array($result); // this fetches the first row your result
...
in while loop you are again fecthing thr row from result. Which will not work if you have only one row in resul
use
if (mysql_num_rows($result) == 0) {
echo "Sorry brah. Nothing matches your search criteria.";
} else {
$i = 1;
while($row = mysql_fetch_array($result)) {
echo "$i - " . $row['first_name'] . " " . $row['last_name'] . " - " . $row['address'] . "<br />";
$i++;
}
}
try mysql_num_rows($result)==0 instead in the if statement
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With