Hi,
Ich hab hier ein Problem bei einem DB-Insert.
Ausgangspunkt ist ein mehrdimensionales Array $arrPlanetData, dessen einzelnen Elemente wie folgt aufgebaut sind:
Das Array wird schrittweise abgefragt ( in einer for-schleife - das es mit foreach auch ginge, ist mir klar) und Einträge in eine DB gemacht:
Mein Problem: In der DB erhalte ich zwar für jedes Element des Arrays einen Eintrag - aber der lautet dann nicht
nick = "Darth_Vader" und allytag = "[DZ]",
sondern:
nick = "0" und allytag bleibt leer.
Auch wenn ich die per echo ausgegebene MySQL-Insertabfrage (z.B. im Beispielfall:
in phpMyAdmin kopiere und ausführe, kommt es zu diesem falschen Ergebnis. Wenn ich die beiden Strings über das "Einfügen"-Formular von phpMyAdmin eingebe, dann wird der Eintrag richtig erstellt, was dafür spricht, dass die DB-Felder richtig formatiert sind.
Warum also dieses Ergebnis?
etwas ratlos,
mardeluk
Ich hab hier ein Problem bei einem DB-Insert.
Ausgangspunkt ist ein mehrdimensionales Array $arrPlanetData, dessen einzelnen Elemente wie folgt aufgebaut sind:
Array
(
[0] => 1
[1] => Tattooine
[2] => Darth_Vader
[3] => [DZ]
[4] => 566
(
[0] => 1
[1] => Tattooine
[2] => Darth_Vader
[3] => [DZ]
[4] => 566
PHP-Code:
$insertSQL = "INSERT INTO userdata
SET nick = '".mysql_escape_string($arrPlanetData[$i][2])."'
AND allytag ='".mysql_escape_string($arrPlanetData[$i][3])."'";
echo $insertSQL; // zu Debug-Zwecken
$insertUser = $insertSQL;
nick = "Darth_Vader" und allytag = "[DZ]",
sondern:
nick = "0" und allytag bleibt leer.
Auch wenn ich die per echo ausgegebene MySQL-Insertabfrage (z.B. im Beispielfall:
INSERT INTO userdata
SET nick = 'Darth_Vader' AND allytag ='[DZ]'
SET nick = 'Darth_Vader' AND allytag ='[DZ]'
Warum also dieses Ergebnis?
etwas ratlos,
mardeluk
Kommentar