Hilfe ! SQL Prob

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

  • Hilfe ! SQL Prob

    Hallo,

    hab ein Problem mit einem Guestbook, kann mir einer sagen was folgende Fehlermeldung meint und ich das wohl beheben kann :

    Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in ...........


    so heisst die Zeile im Code:

    $num = mysql_num_rows($res);



    ich check das nicht

    sorry, bin noch ein noob
    Zuletzt geändert von OlliMann; 11.05.2004, 22:01.

  • #2
    du hast als Argument der Funktion mysql_num_rows keine gültige MySQL-Resource übergegeben. Poste 3 Zeilen davor und 3 Zeilen danach inkl. die Zeile mit mysql_num_rows mal.

    Kommentar


    • #3
      Gib bitte mal noch an wie du die Variable $res füllst.

      Denn in der Fehlermeldung steht ja schon, dass im Argument welches an mysql_num_rows übergeben wird, der Fehler drinsteckt.
      [color=red]Geht nicht[/color] ist keine Fehlermeldung

      Kommentar


      • #4
        PHP-Code:
        if (!isset($HTTP_GET_VARS["seite"])) {
        $seite=1;
        } else {
        $seite=$HTTP_GET_VARS["seite"]; }

        if (!isset(
        $HTTP_GET_VARS["admin"])) {
        $admin=0;
        } else {
        $admin=$HTTP_GET_VARS["admin"]; }

        //DATENBANKVERBINDUNG HERSTELLEN
        include ('secure/_config.php');

        //DATEINAMEN FÜR DAS GÄSTEBUCH
        $file "book.php";

        //SETZEN DER ANZAHL DER ANZUZEIGENDEN SEITEN
        $y 7;
        $x = ($seite-1) * $y;

        //ALLE EINTRÄGE DES GÄSTEBUCH ABFRAGEN
        $res mysql_query("SELECT * from gaestebuch order by ID desc");
        //ANZAHL DER GESAMTEN GÄSTEBUCHEINTRÄGE
        $num mysql_num_rows($res);

        //ANZAHL DER SEITEN
        $seiten ceil($num $y);

        //AUSGABE DER ÜBERSCHRIFT
        echo "<h2 class=\"h2\">[ ";

        //BEDINGUNG FÜR LINK "ZURÜCK"
        if ($seite==1) {
            echo 
        "";
            } else {
            echo 
        "<a href=\"index.php?go=$file&amp;seite=".($seite-1)."\" 
        class='link2'>ZUR&Uuml;CK</a> | "
        ;
        }
        //AUSGABE DER ANZAHL DER SEITEN
        for ($i=1$i<=$seiten$i++) {
            echo 
        "<a href=\"index.php?go=$file&amp;seite=$i\" class=\"link2
        \">
        $i</a> ";
        }
        echo 
        "| <a href=\"index.php?go=$file&amp;seite=".($seite+1)."\" 
        class=\"link2\">WEITER</a> | <a href=\"index.php?go=book_form.php\" 
        class=\"link2\">NEU</a> ] <span style=\"background: transparent; color: 
        black; font-weight: normal; font-size: 10px;\">
        $num Eintr&auml;ge
         insgesamt</span></h2><hr />"


        //ÜBERSCHRIFT ENDE


        //EINTRÄGE X BIS Y ABFRAGEN
        $res mysql_query("SELECT * from gaestebuch order by ID desc limit $x$y");
        $num mysql_num_rows($res);

        for (
        $i=0$i<$num$i++) {
        $name mysql_result($res$i"name");
        $text mysql_result($res$i"text");
        $comment mysql_result($res$i"comment");
        $email mysql_result($res$i"email");
        $homepage mysql_result($res$i"homepage");
        $icq mysql_result($res$i"icq");
        $datum mysql_result($res$i"datum");
        $ID mysql_result($res$i"ID");
        $date date("j.n.Y"$datum);

        //AUSGABE DER EINTRAGINFORMATIONEN
        echo "
        <h2 class=\"h2a\">
        $ID • $name • $date";
            
        //PRÜFEN, OB EMAIL, WEB, ADMIN VORHANDEN
            
        if ($email=="" AND $homepage=="http://" AND $admin=="0") {

                echo 
        "";
                } else {
                echo 
        " •";
            }
        //PRÜFEN, OB EMAIL VORHANDEN
            
        if ($email=="") {
                echo 
        "";
                } else {
                echo 
        "&nbsp;<a href=\"mailto:$email\"><img 
        src=\"images/icon_email.gif\" width=\"13\" height=\"9\" alt=\"email an 

        $email\" title=\"email an $email\" style=\"display:inline;\" /></a>";

            }
        //PRÜFEN, OB HOMEPAGE VORHANDEN

            
        if ($homepage=="http://") {
                echo 
        "";
                } else {
                echo 
        "&nbsp;<a href=\"$homepage\"><img 

        src=\"images/icon_web.gif\" width=\"8\" height=\"9\" alt=\"link zu 

        $homepage\"     title=\"link zu $homepage\" 
        style=\"display:inline;\" /></a>"
        ;

            }
        //PRÜFEN, OB ADMIN AKTIVIERT

            
        if ($admin=="0") {
                echo 
        "";
                } else {
                echo 
        "&nbsp;<a href=\"pages/book_admin.php?
        id=
        $ID\"><img src=\"images/icon_edit.gif\" width=\"7\" height=\"9\"
         alt=\"eintrag bearbeiten\" title=\"eintrag bearbeiten\" 
        style=\"display:inline;\" /></a>"
        ;
            }
        echo 
        "</h2>";
        //AUSGABE DES GÄSTEBUCHSEINTRAGES
        echo "<p class=\"pa\">";echo nl2br($text);echo"</p>";
        //AUSGABE DER WEBMASTER-KOMMENTARE
        if ($comment=="") {
        echo 
        "";
        } else {
        echo 
        "<p class=\"pb\">~~~<br /><b>Kommentar:</b>&nbsp;$comment</p>";}


        Zuletzt geändert von OlliMann; 11.05.2004, 22:45.

        Kommentar


        • #5
          du hast zwar zwei Zeilen, die auf deine Beschreibung zutreffen, aber ich tippe mal dass es sich um diese hier handelt:

          PHP-Code:
          $res mysql_query("SELECT * from gaestebuch order by ID desc limit $x$y"); 
          Mir fällt hier eigentlich grundsätzlich kein Syntax-Fehler auf (vielleicht bin ich auch nur zu müde ), aber lass dir doch einfach mal $x und $y ausgeben und schau ob hier sinnvolle Werte rauskommen ....
          [color=red]Geht nicht[/color] ist keine Fehlermeldung

          Kommentar


          • #6
            3 ZEILE davor und danach, nicht die komplette Datei. Ausserdem bitte
            die Zeilen so abbrechen, dass man beim lesen nicht scrollen muss
            Würdest du bitte sofort ändern. (auf ändern klicken)

            zu deinem Problem: wo wird denn Datenbankverbindung aufgebaut?
            Ausserdem Die Fehlermeldung vom Parser enthält auch eine Zeilennummer,
            in Zukunft bitte auch nur den Bereich posten
            Zuletzt geändert von asp2php; 11.05.2004, 22:21.

            Kommentar


            • #7
              thx für die schnelle antwort, aber ...

              wie meinsten das ?

              Das komische ist, das es beim Kollegen von mir läuft ...

              PHP-Code:

              //ALLE EINTRÄGE DES GÄSTEBUCH ABFRAGEN
              $res mysql_query("SELECT * from gaestebuch order by ID desc");

              //ANZAHL DER GESAMTEN GÄSTEBUCHEINTRÄGE
              $num mysql_num_rows($res); 
              PHP-Code:
              //EINTRÄGE X BIS Y ABFRAGEN
              $res mysql_query("SELECT * from gaestebuch order by ID desc limit $x,
               
              $y");
              $num mysql_num_rows($res); 
              Zuletzt geändert von OlliMann; 11.05.2004, 22:32.

              Kommentar


              • #8
                http://www.schattenbaum.net/php/verbindung.php
                und bitte deine 2. Posting ändern

                Kommentar


                • #9
                  kann das auch daran liegen:

                  Fehler:
                  Die zusätzlichen Funktionen für verknüpfte Tabellen wurden automatisch deaktiviert. Klicken Sie hier um herauszufinden warum.

                  das zeigt mir phpMyAdmin an ...

                  so wie´s aussieht bekommt der keinen connect
                  Zuletzt geändert von OlliMann; 11.05.2004, 22:52.

                  Kommentar


                  • #10
                    hä ... wieso denn auf einmal phpmyadmin was hat denn PMA mit deinem Script zu tun

                    ändern die Zeilen mal in:
                    PHP-Code:
                    $res mysql_query("SELECT * from gaestebuch order by ID desc"
                    or die(
                    mysql_error());

                    // bzw.

                    $res mysql_query("SELECT * from gaestebuch order by ID desc 
                    limit  
                    $x,$y") or die(mysql_error()); 
                    Was sagt nun die Fehlermeldungen?

                    Kommentar


                    • #11
                      wenn ich jetzt ehrlich bin, mach ich mich lächerlich


                      es funzt !!!

                      Kommentar

                      Lädt...
                      X