Thread quoting: quoting beim input/output in/aus mysql (9 answers)
Opened by Froschpopo at 2003-09-20 18:08

Dubu
 2003-09-21 16:28
#33845 #33845
User since
2003-08-04
2145 Artikel
ModeratorIn + EditorIn

user image
quotemeta() ist ja auch die vollkommen falshce Funktion dafuer.
Das DBI-Modul liefert eine Funktion quote(), die fuer das Quoten von Datenbankeingaben ist.
Noch besser ist aber IMHO die Verwendung von Platzhaltern mit prepare/execute oder anderen Funktionen. Siehe Abschnitt "Placeholders and Bind Values" sowie die Funktionen prepare() und execute() und andere, die Bind Values unterstuetzen, in perldoc DBI.

Dein Code oben saehe dann z.B. so aus:
Code: (dl )
1
2
3
do("INSERT INTO messages (von, receiver, betreff, message, status, datestamp) VALUES (?, ?, ?, ?, ?, NOW())", undef,
$username, $receiver, $betreff, $message, 1)
        or die "Fehler: $DBI::errstr";

(Das undef steht fuer die Hashreferenz \%attr, mit der optional Attribute an die Datenbank uebergeben werden koennen.)\n\n

<!--EDIT|Dubu|1064147622-->

View full thread quoting: quoting beim input/output in/aus mysql