检查MySQL结果是否为空

时间:2015-10-08 11:37:09

标签: php mysql

我想检查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定位错误。

2 个答案:

答案 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!");
}
?>