"Warning" bei Datenbankabfrage

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

  • "Warning" bei Datenbankabfrage

    Hallo!

    Ich bin heute mit meiner Seite umgezogen und da hat sich folgendes Problem ergeben:
    Ich habe in meinem Code die einfache Abfrage
    PHP-Code:
     $result=mysql_query("SELECT spalte FROM tabelle"$db);
    while (
    $data=mysql_fetch_array($result))
    ... 
    Bisher hat das auch wunderbar funktioniert, seit ich aber den Anbieter gewechselt habe, bekomme ich bei der Ausführung:
    Warning: Supplied argument is not a valid MySQL result resource in /home/www/web383/html/bin/turnierinfo.php on line 23
    Ehrlich gesagt kann ich mit dieser Meldung nicht wirklich viel anfangen.. Das Script wird auch ausgeführt, allerdings ist die Variable $result nun leer, was vorher nicht der Fall war.. Woran kann das liegen? Hat das eventuell mit der PHP-Version zu tun?

    MfG
    Daniel
    Zuletzt geändert von FenchelT; 16.08.2002, 14:55.

  • #2
    sind die spaltennamen richtig ?? ist der name der tabelle richtig ??

    gruss

    Kommentar


    • #3
      Vor allem: Fehlen im Original auch die schließenden Anführungszeichen?
      carpe noctem

      [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
      [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

      Kommentar


      • #4
        Ups.. nein, im Original sind sie richtig gesetzt.. Das liegt daran, dass ich die Abfrage fürs Posting verändert habe (hatte da Variablen drin..)
        Die Spaltenüberschriften stimmen exakt überein, da ich ein DUMP der alten MySQL-Tabelle erstellt und die dann in die neue eingefügt habe..

        Kommentar


        • #5
          Aber gerade diese Variablen wären interessant. Wen Du einen Fehler hast mit einem Befehl, dann mußt Du auch diesen Befehl hier posten und nicht einen ähnlichen .....

          Wurde der Connect ordnungsgemäß durchgeführt - ohne Fehler?
          Wurde die Auswahl der Datenbank ordnungsgemäß durchgeführt - ohne Fehler?

          Sind alle Variablen gesetzt?

          Kommentar


          • #6
            Es wurde ordnungsgemäß connected, es gab also keine Fehlermeldungen.. Das bestätigt sich auch daher, dass sich das Script nach einem Formular-Submit selbst wieder aufruft - mit dem gleichen Connect-Befehl! Und es wurden auch schon Daten fürs Formular ausgelesen, also scheint da alles richtig zu sein..
            Der ursprüngliche Befehl sieht so aus:
            PHP-Code:
            $result=mysql_query("SELECT spieler FROM turnierteilnehmer WHERE nr".$nummer."='1'"$db);
            while (
            $data=mysql_fetch_array($result))
            ... 
            Und die Variablen.. $db ist ganz normal die Datenbankvariable und $nummer ist ein bestimmter Wert, der die Tabelle auswählt.

            Kommentar


            • #7
              PHP-Code:
              $TheQuery "SELECT spieler FROM turnierteilnehmer WHERE nr".$nummer."='1'";  // füg das bitte ein
              print "TheQuery:$TheQuery<br>\n"// und poste bitte das Ergebnis

              $result=mysql_query($TheQuery$db) or print "&gt;&gt;&gt; MySQL-Error: "    mysql_errno() . " -&gt; " mysql_error()."<br>\n"// Und das auch bitte posten
              while ($data=mysql_fetch_array($result))
              ... 
              Zuletzt geändert von hand; 16.08.2002, 18:13.

              Kommentar


              • #8
                Ok, vielen Dank, der Fehler liegt wohl darin, dass die Variable $nummer nach dem Abschicken des Formulars nicht mehr vorhanden ist..
                vor dem Abschicken:
                TheQuery:SELECT spieler FROM turnierteilnehmer WHERE nr6='1'
                nach dem Abschicken:
                TheQuery:SELECT spieler FROM turnierteilnehmer WHERE nr='1'
                Damit ist der Fehler klar, nur... Warum trat er vorher nicht auf? Besteht überhaupt theoretisch die Möglichkeit, dass das in irgend einer Form am Anbieter liegt? Ansonsten muss wohl mein genialer Gegenpart, mit dem ich die Seite zusammen erstelle, in der Zwischenzeit dort was verändert haben, denn ich habe die Seite 1 zu 1 übernommen...
                Naja gut, ich will mich nicht rausreden, aber ich denke, bei einem Anfänger dürfen solche Fehler passieren, oder? Finde ich übrigens richtig klasse, dass im Gegensatz zu den meisten anderen Programmier-Foren Anfänger hier nicht gleich zusammengeschissen werden, wenn sie mal was nicht kapieren! :-)

                MfG Daniel

                Kommentar


                • #9
                  Original geschrieben von hand
                  Sind alle Variablen gesetzt?
                  hat hand schon früher gefragt.

                  Wenn Du die SQL-Statements gleich mit aussagekräftiger or Anweisung schreibst ersparst Du Die einiges an Fehlersuchen
                  PHP-Code:
                  $result=mysql_query($TheQuery$db) or print "&gt;&gt;&gt; MySQL-Error: ".mysql_errno()." -&gt; ".mysql_error()."<br>\n"
                  >>> MySQL-Error: 1054 -> Unknown column 'nr' in 'where clause'

                  Kommentar


                  • #10
                    das heißt, mySQL-Befehle geben, bei fehlendem "or" NIE Fehlermeldungen aus, auch wenn sie nich funktionieren?

                    Kommentar


                    • #11
                      Stimmt fast. Zumindest keine exakten die Meldung "Warning: mysql_fetch_array(): supplied argument is not a valid MySQL ..." hast ja bekommen.

                      Zu Deiner Frage: "Warum trat er vorher nicht auf?" eine mögliche Antwort
                      http://www.php-resource.de/forum/sho...&threadid=9073
                      Zuletzt geändert von hand; 16.08.2002, 18:22.

                      Kommentar


                      • #12
                        Hmm.. daran liegts nicht.. Die Version beim alten Anbieter war 4.1.0 und jetzt ist sie 4.0.6
                        Aber naja, wenigstens weiß ich jetzt, wo der Fehler liegt, vielen Dank nochmal für die Hilfe!

                        Kommentar


                        • #13
                          Variable wird nicht übergeben ? Das ist oft der Grund !!
                          mein Sport: mein Frühstück: meine Arbeit:

                          Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

                          Kommentar

                          Lädt...
                          X