Mailinglisten-Archive |
Kristian Köhntopp wrote: > > Nadja Senoucci wrote: > > Ich habe nämlich eine Funktion geschrieben mit der ich > > Zeichen wie z.B. ' oder " durch etwas anderes austauschen > > kann. Dieser Funktion muß jedoch die jeweilige Variable > > übergeben werden ($pw, $email, $name $str etc.). > > $query = sprintf("insert into bla ( a, b, c ) values ('%s', '%s', '%s' )", > addslashes($a), addslashes($b), addslashes($c)); > mysql_query($query, $link); Hallo, also, ich habe dann so versucht, nachdem ich versucht habe ein wenig über diese Funktion herauszubekommen. So sehen die Codezeilen aus: <? $query=sprintf("insert into user (email,vname,name,str,plz,ort,geb,sex,pw) values ('%s', '%s', '%s', '%s', \"$plz\", '%s', \"$geb\", \"$sex\", '%s')",addslashes($email), addslashes($vname), addslashes($name), addslashes($str), addslashes($ort), addslashes($pw)); mysql_query($query)or die(mysql_error()); ?> Folgendes passiert bei mir: 1) Er gibt keine Fehlermeldung aus 2) Er trägt die Werte in die Datenbank ein und zwar 3) _ohne_ die backslashes und 4) kann ich diese Zeile (da sie zum test ' und " enthielt) nicht mehr auf normalem Wege löschen (mit einer delete-query, editieren der Zeile über PHPMyAdmin auch nicht möglich), sondern nur indem ich den gesamten Tabelleninhalt lösche (über PHPMyAdmin mit empty) Hab' ich etwas falsch gemacht?? Ich vermute es, da ci nicht den gewünschten Effekt erzielen konnte. Kann mir jemand weiterhelfen? Ciao, Eure Nadja
php::bar PHP Wiki - Listenarchive