kuckuck: mysql_query statement

Guten Abend zusammen,

ich habe die nachfolgende For-Schleife, welche mehrere mysql_query's duchführen soll.

for($i=1;$i<=$rows;$i++){  
	mysql_query("UPDATE `lagerbestand` SET `Meldebestand` = '".$_POST[mbestand][$i]."', `Sicherheitsbestand` = '".$_POST[sbestand][$i]."' WHERE `KdArtikelNr` = '".$_POST[art][$i]."'");  
}

Komischerweise wird immer der letzte query, also wenn gerade $i=$rows ist, durchgeführt. Wo steckt der Fehler??

Schonmal Danke für Eure Mühe.

kuckuck

  1. Hallo,

    ich habe die nachfolgende For-Schleife, welche mehrere mysql_query's duchführen soll.

    for($i=1;$i<=$rows;$i++){

    mysql_query("UPDATE lagerbestand SET Meldebestand = '".$_POST[mbestand][$i]."', Sicherheitsbestand = '".$_POST[sbestand][$i]."' WHERE KdArtikelNr = '".$_POST[art][$i]."'");
    }

      
    
    > Komischerweise wird immer der letzte query, also wenn gerade `$i=$rows`{:.language-php} ist, durchgeführt. Wo steckt der Fehler??  
      
    1) im Fehlen der Fehlerbehandlung; ich vermisse das Prüfen des Rückgabewertes  
       von [mysql_query](http://de.php.net/manual/de/function.mysql-query.php),  
    2) im Fehlen einer Debugausgabe (z.B. Deines SQL-Statements),  
    3) in Deinem Zugriff auf Arrayelemente: [Why is $foo\\[bar\] wrong](http://www.php.net/manual/de/language.types.array.php#language.types.array.foo-bar),  
    4) im Fehlen der [kontextgerechten Behandlung Deiner Eingabewerte](http://aktuell.de.selfhtml.org/artikel/php/kontextwechsel/),  
    5) in der Verwendung der veralteten mysql\_\*-Funktionen statt der empfohlenen  
       [mysqli-Erweiterung](http://www.php.net/manual/de/book.mysqli.php); das hier wäre ein Fall für [prepared Statements](http://www.php.net/manual/de/mysqli.prepare.php),  
    6) Bist Du Dir sicher, dass Du wirklich beim Index 1 anfangen willst?  
      
    Das wäre das, was mir auf den ersten und zweiten Blick aufgefallen ist.  
      
      
    Freundliche Grüße  
      
    Vinzenz