если пустой запрос показывает сообщения в php [дубликат]



На этот вопрос уже есть ответ здесь:



Мне нужна небольшая помощь с моим кодом.
Я хочу показать сообщение, когда таблица пуста.



Мой код -



function category()
{
global $config,$db,$lang;
$result = "SELECT id, name FROM category ORDER BY id";
$stmt = $db->prepare($result);
$stmt->execute();
while($row = $stmt->fetch(PDO::FETCH_ASSOC))
{
$tpl=parse_tpl('category.php');
$tpl=str_replace("{_HTTP_SERVER_}",$config['http_server'],$tpl);
$tpl=str_replace("{cat_id}",$row['id'],$tpl);
$tpl=str_replace("{cat_title}",kill_tags($row['name']),$tpl);
echo $tpl;
}
if(empty($row)) echo $lang['category_not'];
}


Когда ни одна запись в таблице не показывает это сообщение



 $lang['category_not']


Я попробовал с if(empty($row)) , if (!$row) и if($row == o) но ничего не вышло.

509   1  

1 ответ:

Вы должны использовать свой код следующим образом:

if($stmt->rowCount() == 0)
{
   echo "nothing found message";
}
else
{

  while($row = $stmt->fetch(PDO::FETCH_ASSOC)
  {
    // code for loop
  }
}// else ends here

Comments

    Ничего не найдено.