我想检查MySQL结果是否为空并回显错误消息。
这是我当前的SQL脚本:
<?php
$sql = new rex_sql;
$sql->debugsql = 0; //Ausgabe Query
$sql->setQuery("SELECT * FROM $db_downloads WHERE gruppe = $gruppe_teilnehmer ORDER BY id DESC limit 4");
for($i=0;$i<$sql->getRows();$i++)
{
$id = $sql->getValue("id");
$dateiname = $sql->getValue("dateiname");
$dateigroesse = $sql->getValue("dateigroesse");
$dateipfad = $sql->getValue("dateipfad");
$dateidatum = date("d.m.Y",strtotime($sql->getValue("dateidatum")));
$dateizeit = date("H.i",strtotime($sql->getValue("dateidatum")));
$download_teilnehmer = $sql->getValue("teilnehmer");
$datei_projektnummer = $sql->getValue("projektnummer");
$projektseite = $sql->getValue("projektseite");
$ausgabe .= '<li><a href="index.php?article_id='.$projektseite.'"></a><i class="fa fa-file-o"></i>'.$dateiname.'<ul><li><i class="fa fa-calendar"></i>'.$dateidatum.' | '.$dateizeit.'</li><li><i class="fa fa-circle"></i>'.$datei_projektnummer.'</li></ul></li>';
if(empty($ausgabe)) {
echo ("Error! No result!");
}
$sql->next();
}
?>
但没有错误消息。我认为if-argument定位错误。
答案 0 :(得分:0)
使用php计数功能
if(!count($sql->getRows())) {
echo 'No data found';
}
答案 1 :(得分:0)
把它放在循环之外:
<?php
$ausgabe = "";
$sql = new rex_sql;
$sql->debugsql = 0; //Ausgabe Query
$sql->setQuery("SELECT * FROM $db_downloads WHERE gruppe = $gruppe_teilnehmer ORDER BY id DESC limit 4");
for($i=0;$i<$sql->getRows();$i++)
{
$id = $sql->getValue("id");
$dateiname = $sql->getValue("dateiname");
$dateigroesse = $sql->getValue("dateigroesse");
$dateipfad = $sql->getValue("dateipfad");
$dateidatum = date("d.m.Y",strtotime($sql->getValue("dateidatum")));
$dateizeit = date("H.i",strtotime($sql->getValue("dateidatum")));
$download_teilnehmer = $sql->getValue("teilnehmer");
$datei_projektnummer = $sql->getValue("projektnummer");
$projektseite = $sql->getValue("projektseite");
$ausgabe .= '<li><a href="index.php?article_id='.$projektseite.'"></a><i class="fa fa-file-o"></i>'.$dateiname.'<ul><li><i class="fa fa-calendar"></i>'.$dateidatum.' | '.$dateizeit.'</li><li><i class="fa fa-circle"></i>'.$datei_projektnummer.'</li></ul></li>';
$sql->next();
}
if(empty($ausgabe)) {
echo ("Error! No result!");
}
?>