Hilfe bei Fehlersuche

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

  • Hilfe bei Fehlersuche

    Bitte helft mir den Fehler im meinem Script zu finden, d.h. ich hab keine Ahnung, mit welcher Funktion ich auf das Ergebnis meiner SQL-Abfrage zugreifen kann.

    Hier der Code:

    PHP-Code:
    <?php
    if ($erster)
       {
       
    $db mysql_connect();
       
    $res mysql_db_query("lieferscheine","SELECT * FROM lieferdaten WHERE liefernummer=MIN(liefernummer) ORDER BY liefernummer ASC LIMIT 1");
       
    $num mysql_num_rows($res); // Zeile 6
       
    echo "$num Datensätze gefunden<br>";
       
    mysql_close($db);
        }   
    echo 
    "<html>";
    echo 
    "<body>";
    echo 
    "<form action='blaettern.php' method='post'>";
    echo 
    "<input type='submit' value='<<' name='erster'>";
    echo 
    "</form>";
    echo 
    "</body>";
    echo 
    "</html>";
    ?>
    Und hier die Meldung von MySQL:

    Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\xampp\htdocs\...\blaettern.php on line 6
    it's not a bug,
    it's a feature!

  • #2
    immer schön " or die(mysql_error() hinter mysql_query schreiben. dann weiss man schon ne menge mehr!
    h.a.n.d.
    Schmalle

    http://impressed.by
    http://blog.schmalenberger.it



    Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
    ... nur ohne :-)

    Kommentar


    • #3
      Da sagt er mir:

      Invalid use of group function
      So und nu?
      it's not a bug,
      it's a feature!

      Kommentar


      • #4
        dein sql-statement soll zweimal das selbe machen

        erst den eintrag mit der niedrigsten liefernummer raussuchen und alle die (obwohl's nur einen gibt) nach liefernummer aufsteigend sortieren und den ersten datensatz liefern

        lustig

        Code:
        SELECT *
        FROM lieferdaten
        ORDER BY liefernummer ASC
        LIMIT 1
        sollte völlig ausreichen
        Ich denke, also bin ich. - Einige sind trotzdem...

        Kommentar


        • #5
          @happy
          Danke das hat mein Prob gelöst, letzten Eintrag kriege ich auch so raus,
          nur halt mit MAX()

          aber ich will das noch so machen, das man einen Datensatz vor oder noch zurück gehen kann. Ich habs so probiert:
          PHP-Code:
          <?php
          if ($nachfolger)
             {
             
          $db mysql_connect();
             
          $res mysql_db_query("lieferscheine","SELECT * FROM lieferdaten WHERE liefernummer>'$liefernummer' ORDER BY liefernummer ASC LIMIT 1") or die(mysql_error());
             
          $num mysql_num_rows($res);
             echo 
          "$num Datensätze gefunden<br>";
             for (
          $i=0$i<$num$i++)
             {
                
          $name mysql_result($res$i"name");
                
          $strasse mysql_result($res$i"strasse");
                echo 
          "$name$strasse <br>";
             }
             
          mysql_close($db);
              }
          echo 
          "<html>";
          echo 
          "<body>";
          echo 
          "<form action='blaettern.php' method='post'>";
          echo 
          "<input type='submit' value='>' name='nachfolger'>";
          echo 
          "</form>";
          echo 
          "</body>";
          echo 
          "</html>";
          ?>
          Das funzt aber irgendwie nicht. Fehlermeldungen gibts keine, er zeigt mir
          aber immer den ersten Datensatz an - egal wie oft ich auch klicke.

          Ist am SQL was falsch?
          it's not a bug,
          it's a feature!

          Kommentar


          • #6
            PHP-Code:
            echo "SELECT * FROM lieferdaten WHERE liefernummer>'$liefernummer' ORDER BY liefernummer ASC LIMIT 1"
            EDIT:
            ausgabe?
            EDIT:
            du sollst dir das SELECT dass du sendest mal ausgeben lassen und das Ergebnis (die Ausgabe) hier posten
            Zuletzt geändert von mrhappiness; 12.09.2003, 12:15.
            Ich denke, also bin ich. - Einige sind trotzdem...

            Kommentar


            • #7
              Hä? vielleicht noch ein winziger Kommentar? *aufdenknienzudirbettel*
              it's not a bug,
              it's a feature!

              Kommentar


              • #8
                s.o.
                Ich denke, also bin ich. - Einige sind trotzdem...

                Kommentar


                • #9
                  Bitte einmal ein guter deutscher Satz - soll heißen Subjekt, Prädikat, Objekt und der ganze Grammatik-Schmarrn. Ich kann mir wirklich nichts aus Deinen bisherigen
                  Aussagen nehmen, weder aus "s.o." noch aus "Ausgabe".
                  it's not a bug,
                  it's a feature!

                  Kommentar


                  • #10
                    dieser select kann nur einen datensatz anzeigen. oder was meinst du wofür LIMIT 1 wohl sonst stehen mag?

                    s.o. -> siehe oben

                    ausgabe -> was steht im browser
                    h.a.n.d.
                    Schmalle

                    http://impressed.by
                    http://blog.schmalenberger.it



                    Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
                    ... nur ohne :-)

                    Kommentar


                    • #11
                      @schmalle
                      Ich weiß, wofür s.o. die Abkürzung ist, DANKE. Ich wusste nur nicht, worauf sich das bezogen hat.
                      Ich weiß außerdem, dass ich mit dem SELECT nur einen Datensatz kriege, mehr will ich ja auch nicht, weil ich meine Datenbank Satz für Satz durchblättern will und die Daten dann in ein Formular lade zum ankucken.




                      Die Ausgabe ist folgende:









                      Richtig, es gibt keine Ausgabe!!!!
                      Ich glaube, dass der nächste Datensatz überhaupt nicht gelesen wird.
                      it's not a bug,
                      it's a feature!

                      Kommentar


                      • #12
                        Sollte ich mit meinem letzten Beitrag jemanden beleidigt haben tut es mir leid, das wollte ich nicht.

                        OK. Ich hab jetzt Feierabend. Bis Montag Leute.
                        Zuletzt geändert von XGremliN; 12.09.2003, 14:11.
                        it's not a bug,
                        it's a feature!

                        Kommentar


                        • #13
                          Ich hab das Problem gefunden. Er hat mir die benachbarten Datensätze nicht mitgeliefert, weil ich im Formular, die Liefrenummer nicht mit übergeben habe.
                          Danke für eure Hilfe.
                          it's not a bug,
                          it's a feature!

                          Kommentar

                          Lädt...
                          X