steffen: Fehler in DB abfrage

Hi Forumleser,

habe ein Problem und finde ihn echt nich. (Uhrzeit?!)

Er merkelt mir das an

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/httpd/vhosts/boyzpicture.com/httpdocs/index.php

Code:

login_db();
mysql_query("INSERT INTO user SET Nick = "". $nick ."", Password = "". $pwd ."", Email = "". $email ."", ID_Abschluss = "1" ");
$result=mysql_query("SELECT ID FROM user WHERE Nick = "". $nick ."" ");
while($result=mysql_fetch_array($result)){
        echo mysql_error();
        mysql_query("INSERT INTO freischaltung SET Code = "".$code."", User_ID ="".$result[0]."" ");
}

Seht ihr den Fehler?

Danke für die späte Hilfe.

mfg steffen

  1. Hallo steffen,

    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/httpd/vhosts/boyzpicture.com/httpdocs/index.php

    Was sagt mysql_error() an dieser Stelle?

    Grüße aus Nürnberg
    Tobias

    --
    TOP7: Hinweise, dass dein Computer Opfer eines Hackerangriffs geworden ist
    Selfcode: ie:% fl:( br:< va:) ls:[ fo:) rl:° n4:& ss:) de:] js:| ch:? sh:( mo:| zu:)
    1. Hab es ganz einfach gelöst mit mysql_insert_id();

      Danke für eure hilfe.

      Zudem hab ich 3 * $result benutzt kann also gar nicht funktionieren...

      Aber danke für eure Zeit :)

  2. Hallo Steffen,

    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/httpd/vhosts/boyzpicture.com/httpdocs/index.php

    da er explizit meckert, dass das Argument von mysql_fetch_array() keine gültige MySQL result resource ist, solltest du dir mal die Variable $result anschauen.

    $result=mysql_query("SELECT ID FROM user WHERE Nick = "". $nick ."" ");
    while($result=mysql_fetch_array($result)){
            echo mysql_error();
            mysql_query("INSERT INTO freischaltung SET Code = "".$code."", User_ID ="".$result[0]."" ");
    }

    Nur so ein paar Ideen:

    1. Existiert die Tabelle user?
    2. Gibt es in dieser Tabelle die Spalte ID?
    3. Was ist der Wert von $nick?

    UPPS: sehe gerade: die Zuweisung $result=mysql_fetch_array($result) in einer while Schleife sieht nicht besonders gesund aus. Vergiß die drei Tipps erstmal und ändere die whileschleife zum Beispiel in

    while($erg=mysql_fetch_array($result)){
              echo mysql_error();
              mysql_query("INSERT INTO freischaltung SET Code = "".$code."", User_ID ="".$erg[0]."" ");
    }

    Wenn es dann immer noch nicht funktioniert, könnten die drei Tipps doch noch hilfreich sein ...

    liebe Grüße mbr

  3. Moin Steffen,

    login_db();
    mysql_query("INSERT INTO user SET Nick = "". $nick ."", Password = "". $pwd ."", Email = "". $email ."", ID_Abschluss = "1" ");
    $result=mysql_query("SELECT ID FROM user WHERE Nick = "". $nick ."" ");
    while($result=mysql_fetch_array($result)){
            echo mysql_error();
            mysql_query("INSERT INTO freischaltung SET Code = "".$code."", User_ID ="".$result[0]."" ");
    }

    Seht ihr den Fehler?

    In Deinem Code fehlt eine Fehlerbehandlung.
    Dein "echo mysql_error();" ist so ungünstig platziert, dass es bei einem Fehler nie erreicht wird.
    Dein SQL-Statement enthält ein reserviertes Schlüsselwort - benutzte also Backticks oder einen anderen Spaltennamen.

    Viele Grüße

    lulu

    --
    bythewaythewebsuxgoofflineandenjoytheday