dedlfix: Warnmeldung: "not a valid MySQL result resource"

Beitrag lesen

Hi!

Das fällt mir echt schwer, bei den Missverständnissen, die es hierzu gibt, was mysql_real_escape_string() eigentlich wirklich macht. Es mag für MySQL genügen, unsicheren Zeichen einen Backslash voranzustellen was sich Escape nennt.

Diese Zeichen sind nicht unsicher, sie haben lediglich eine syntaktische Bedeutung, wenn sie nicht maskiert sind.

Es gibt jedoch noch andere RDBMS und andere Programmiersprachen, da wird das als Quoten bezeichnet, weil es eben mehr ist, als nur ein Escape.

Jedes System und jeder, das/der es richtig macht, unterschiedet zwischen Quotieren und Escapen. To quote heißt (für diesen Fall) in Anführungszeichen setzen. Maskieren/escapen ist der Vorgang, wenn den Zeichen "eine Maske aufgesetzt" wird. Sie werden mit Hilfe eines weiteren Zeichens oder einer bestimmten Zeichensequenz (wie bei HTML-/XML-eigenen Zeichen) vor dem Parser versteckt, der sie daraufhin als Datenbestandteil und nicht als Zeichen mit syntaktischer Bedeutung behandelt.

Lo!