mysql_num_rows gibt unerwarteten Wert wieder

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • mysql_num_rows gibt unerwarteten Wert wieder

    Hallo,

    ich habe folgendes Problem:
    Ich habe mehrere Seiten, zu denen ein User Kommentare verfassen kann und möchte die verfassten Kommentare dann auf der jeweiligen Seite ausgeben.

    Wenn man nun auf die Seite kommentare.php geht und das Kapitel nicht vorhanden ist oder kein Kommentar zu dem Kapitel vorhanden ist, dann soll eine Fehlermeldung erscheinen.

    Das Problem dabei ist, wenn kein Kapitel vorhanden ist, dann gibt mysql_num_rows den Wert 0 aus, wie es soll. Wenn aber das Kapitel jedoch kein Datensatz vorhanden ist, dann gibt es den Wert 1 aus und nicht 0 wie es sein sollte.
    Wenn ein Kapitel und genau ein Datensatz vorhanden ist, dann gibt es ebenfalls den Wert 1 aus, wie es sein soll.

    Meine Frage wäre warum gibt mysql_num_rows den Wert 1 aus, wenn ein Kapitel aber kein Datensatz vorhanden ist und wie kann ich das ändern?

    Hier der entsprechende Auszug aus dem Code:
    PHP-Code:
    <?php
            error_reporting
    (E_ALL);
            
    ini_set('display_errors'1);
            
    $db = @new mysqli('localhost''xxx''xxx''xxx');
            if (
    mysqli_connect_errno()) {    
             die(
    'Konnte keine Verbindung zur Datenbank aufbauen: '.mysqli_connect_error().'('.mysqli_connect_errno().')');
            }
     
            
    $sql =  "SELECT                
               Datum,                
               Autor,
               Inhalt,
               Rang
              FROM                
               kommentare
              INNER JOIN
               benutzer
              ON
               Autor = Username
              WHERE
               kommentare.Kapitelnummer = '
    $kapitelnummer
              ORDER BY                
               Datum DESC"

     
             
    $result mysql_query($sql)
             OR die(
    "Error: $result <br>".mysql_error());
     
             if (
    mysql_num_rows($ergebnis) == 0)
              {
              echo 
    'Es sind keine Kommentare vorhanden.<br>' ;
    }
    Wäre schön, wenn mir jemand helfen könnte.

    MfG

    spitex


    [COLOR=red]Edit:[/COLOR]
    [COLOR=red]Hat sich erledigt. Stundenlang habe ich den Fehler gesucht und genau jetzt nach dem Posten ist mir aufgefallen, dass ich die falsche Variable von einer Abfrage weiter oben im Script übernommen habe. Entschuldigung. -.-[/COLOR]
    Zuletzt geändert von spitex; 19.09.2012, 15:28.
Lädt...
X