Да. Тем не менее, ваше форматирование не совсем справедливо, попробуйте очистить его, чтобы его было легче понять. Среда IDE NetBeans или даже Zend Development Environmont ($) выполняют автоматическое форматирование кода, что значительно облегчает жизнь.
$result = mysql_query("SHOW TABLES FROM feather") or die(mysql_error());
while(list($table)= mysql_fetch_row($result)) {
$sqlA = "SELECT COUNT(*) FROM `$table` WHERE `site` LIKE '$entry'";
$resA = mysql_query($sqlA) or die("$sqlA:".mysql_error());
if(mysql_num_fields($resA)>0){
list($isThere) = mysql_fetch_row($resA);
if ($isThere) {
$table_list[] = $table;
}
} else{
print "<p class=\"topic\">$entry does not exist</p>\n";
}
}
Короче говоря:
mysql_num_fields ($ resA) ВСЕГДА больше нуля, потому что функция COUNT (*) всегда будет возвращать значение независимо от (0 или 1 или 1000000 и т.
Чтобы исправить, поднимите еще один уровень вверх, и я бы использовал принуждение, чтобы быть более безопасным. Наконец, mysql_num_fields не является действительно необходимым, потому что вы знаете, что это всегда 1:
$result = mysql_query("SHOW TABLES FROM feather") or die(mysql_error());
while(list($table)= mysql_fetch_row($result)) {
$sqlA = "SELECT COUNT(*) FROM `$table` WHERE `site` LIKE '$entry'";
$resA = mysql_query($sqlA) or die("$sqlA:".mysql_error());
list($isThere) = mysql_fetch_row($resA);
$isThere = intval($isThere);
if ($isThere > 0) {
$table_list[] = $table;
} else{
print "<p class=\"topic\">$entry does not exist</p>\n";
}
}
И вот оно у вас.