Mailinglisten-Archive |
Hallo, ich habe die folgende function mit einer INSERT Anweisung: function Antworteintrag ($Num, $Antwort_Table, $Table, $realname, $email) { for ($j=1;$j<=$Num;$j++) { $Antwort = "Antwort"; $Antwort .= $j; global $$Antwort; } $db = mysql_pconnect("host", "user","password"); mysql_select_db("Multipel",$db); $query = "\"INSERT INTO $Antwort_Table (Thema, Name,Email,"; for ($i=1;$i<=$Num;$i++) { $Antwort = "Antwort"; $Antwort .= $i; $query .= "$Antwort,"; } $query .= "besucht) VALUES ('$Table', '$realname', '$email',"; for ($g=1;$g<=$Num;$g++) { $Antwort = "\$Antwort"; $Antwort .= $g; $query .= "'$Antwort',"; } $query .= "'ja')\";"; $result = mysql_query ($query, $db); } Wenn ich diese INSERT Anweisung starte, werden die Daten nicht wie gewuenscht uebernommen und in die Datenbank gespeichert. Fuer die INSERT Anweisung bekomme ich folgendes: INSERT INTO Test_Table ( Thema, Name, Email, Antwort1, Antwort2, Antwort3, besucht) VALUES ( 'Test', 'Sajedi', 'arsajedi_(at)_bupnet.de', '$Antwort1', '$Antwort2', '$Antwort3', '', 'ja') Was hier nicht normal aussieht, ist, dass die Werte fuer die Variablen $Antwort1, $Antwort2 und $Antwort nicht in die INSERT Anweisung uebernommen werden sondern sie werden als reine Texte uebernommen und so in die DB gespeichert. Wenn ich eine normale INSERT Anweisung schreibe, dann klappt alles. Da aber sich die Anzahl der Antworte jeweils aendert, bin ich auf so eine Anweisung angewiesen. Liegt das nicht an concatenation? Kann so eine INSERT Anweisung ueberhaupt funktionieren? Gibt es vielleicht eine andere Moeglichkeit, so eine Anweisung zun schreiben? So viel Fragen auf einmal. Ich hoffe, dass jemand Rat weiss und mir weiterhelfen kann. Vielen Dank. Ali
php::bar PHP Wiki - Listenarchive