Richtiger Einsatz von mysql_real_escape_string?

eggman

Well-known member
ID: 70062
L
21 Mai 2006
216
8
Hallo,

ich war nun den halben Tag damit beschäftigt, eine Möglichkeit zu suchen, wie ich Sonderzeichen wie ein Apostroph oder Anführungszeichen in ihrer reinen Form (also ' bzw. ") in eine mySQL-Datenbank schreibe, ohne sie konvertieren oder anderweitig verunstalten zu müssen (' usw.). Damit sollten die Daten später ohne Weiteres - auch außerhalb des Webs - verwendet werden können.

Nun bin ich desöfteren über mysql_real_escape_string, dachte aber immer dabei würden Slashes mit in die Datenbank eingetragen werden. Jetzt gerade erst wurde ich eines Besseren belehrt...

Meine Frage ist nun ganz einfach: Ist mysql_real_escape_string für mein Vorhaben das richtige? Und wie baue ich es am besten in meinen Insert/Update-Befehl ein?

Und wozu haben dann addslashes/stripslashes ihre Daseinsberechtigung, wenn man es mit mysql_real_escape_string so viel einfacher haben kann?

Gruß
 
Meine Frage ist nun ganz einfach: Ist mysql_real_escape_string für mein Vorhaben das richtige? Und wie baue ich es am besten in meinen Insert/Update-Befehl ein?
mir ist so als wäre der real_escape mit irgendeinem bug behaftet keine ahnugn mehr aber für deine zwecke tuts wohl auch mysql_escape_string.

anwendung:
$ql="insert into tabelle set wert=\"".mysql_escape_string($_POST['wert'])."\"";

Und wozu haben dann addslashes/stripslashes ihre Daseinsberechtigung, wenn man es mit mysql_real_escape_string so viel einfacher haben kann?

weil man ja unter umständen auch für andere anwendungen die nicht mysql basiert sind so eine möglichkeit braucht ausserdem denke ich macht der mysql_escape_string noch bisserl mehr aber auf jeden fall halt für mysql optimiert während die slash-funktionen eher allgemein sein dürften. ;)