Rückabewert nicht korrekt

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

  • Rückabewert nicht korrekt

    Hallo!
    Ich habe diesen PHPCode:
    PHP-Code:
    <?
    error_reporting(E_ALL);
    session_start();
    include 'sessionhelpers.inc.php';
    include 'BBCode.php';
    if (logged_in())
    {
      echo INDEX;
      {
        $userid=getuserid();
        echo $userid;
        echo '<table border=1>';

        $sql="SELECT
              *
           FROM
             privatemessage
           WHERE
              Zu='$userid'";
        $result = mysql_query($sql);
        while($row=mysql_fetch_array($result)or die(mysql_error().'<hr />'.$result.'<hr />'));
        {
          $link='<a href="privatmessage_eingang.php?id='.$row['ID'].'" target="_blank"><FONT
    COLOR="'.TABELCOLOR3.'">'.$row['Betreff'].'</a>';
          $nameid=$row['Von'];
          $query = mysql_query("SELECT Name FROM Kunden WHERE ID='$nameid'");
          $row2=mysql_fetch_array($query);
          $name2=$row2 ['Name'];

          $name='<a href="profil_ansicht.php?id='.$nameid.'" target="_blank"><FONT COLOR="'.TABELCOLOR3.'">'.$name2.'</a>';
          if ($row['Typ']==0)
          {
            echo '<tr bgcolor="'.TABELCOLOR1.'">';
          }
          else
          {
            echo '<tr bgcolor="'.TABELCOLOR2.'">';
          }
          echo '<td><FONT 
    COLOR="'.TABELCOLOR3.'">'.$name.'</td><td><FONT 
    COLOR="'.TABELCOLOR3.'">'.$link.'</td>
                </tr>';
        }
      }
    }
    ?>
    dies bekomme ich als Rückgabe:
    Resource id #10
    userid ist korrekt, ebenso die Namen für die Datenbank, also privatemessage und Zu.
    Egal wieviele Einträge in der Datenbank vorhanden sind bekomme ich als Ergebniss Resource id #10, also auch wenn keine Einträge vorhanden sind.
    wenn ich versuche mir $row anzeigen zu lassen, so scheint dies leer zu sein.
    Sieht jemand meinen Fehler?
    Zuletzt geändert von maximus Caesar; 29.05.2006, 17:45.

  • #2
    - Brich bitte deinen Code um
    - beschäftige dich mit JOINS (http://www.php-resource.de/forum/sho...threadid=28292)

    Ist das Leerzeichen hier Absicht?

    $name2=$row2 ['Name'];

    Kommentar


    • #3
      Re: Rückabewert nicht korrekt

      Original geschrieben von maximus Caesar
      PHP-Code:
      $result mysql_query($sql);
      while(
      $row=mysql_fetch_array($result)or die(mysql_error().'<hr />'.$result.'<hr />')); 
      mysql_error an der Stelle ist Unfug - das gehört hinter das mysql_query().
      Und $result ausgeben zu wollen, ist ebenfalls Unfug - weil genau das die Ausgabe Resource ID #xy produziert, denn nichts anderes ist $result.

      Außerdem endet deine While-Schleife natürlich nach dem Semikolon, welches du hinter ihre schließende runde Klammer gesetzt hast.
      Der nachfolgende Anweisungsblock liegt also außerhalb der Schleife, und wird unabhängig von ihr immer genau ein mal ausgeführt.
      I don't believe in rebirth. Actually, I never did in my whole lives.

      Kommentar


      • #4
        Code umgebrochen.
        Das Leerzeicehn ist keine Absicht, entfernt.
        Wenn ich das richtig sehe sind JOINS da, um Daten zu verbinden. Das ist aber nicht das Problem.
        Mein Problem ist, das ich kein Richtiges Ergebniss bekomme, und ich den Fehler nicht finde.
        Also, sieht den Jemand?

        Edit: Danke, wahrsaga! werds gleich ändern!!

        Edit2: Jetzt funktionierts!!
        Zuletzt geändert von maximus Caesar; 29.05.2006, 17:49.

        Kommentar


        • #5
          Original geschrieben von maximus Caesar
          Code umgebrochen.
          Das Leerzeicehn ist keine Absicht, entfernt.
          Wenn ich das richtig sehe sind JOINS da, um Daten zu verbinden. Das ist aber nicht das Problem.
          Mein Problem ist, das ich kein Richtiges Ergebniss bekomme, und ich den Fehler nicht finde.
          Also, sieht den Jemand?

          Edit: Danke, wahrsaga! werds gleich ändern!!
          Es wäre hilfreich, vielleicht geht es auch nur mir so, wenn du erklären könntest wann du genau die RessourceID als Rückgabe bekommst. Wenn du versuchst $result per echo auszugeben, wie in der while-schleife im die()-Fall getan, dann wirst du natürlich die RessourceID zurückbekommen. Würde mich über eine kurze Aufklärung freuen.

          bluma
          Zuletzt geändert von bluma; 29.05.2006, 17:58.

          Kommentar

          Lädt...
          X