dedlfix: Doppelte oder einfache Anführungszeichen

Beitrag lesen

Hi!

[...] ich halte es nicht für klug, Variable einfach in einen String 'reinzuschreiben...

In vielen Fällen ist es schon aus sicherheitstechnischen Gründen gar nicht ratsam, Variablen einfach in Strings zu notieren, weil dann die notwendige Behandlung fehlt beziehungsweise nicht angewendet werden kann. Ein vorheriges Behandeln des Variableninhaltes ist auch nicht empfehlenswert, weil das den Ort der benötigten Kontextbehandlung und selbige voneinander trennt, und man so mehrere Blicke benötigt, um die Stelle als sicherheitstechnisch problemlos zu erkennen. Der andere Weg des String-Raus-Rein ist auch nicht unbedingt besser. Ich bevorzuge in dem Fall die Verwendung von (s)printf():

$sql = sprintf("SELECT * FROM table WHERE name='%s' ORDER BY name", mysql_real_escape_string($_GET['name']));

printf('<p>Der Benutzer %s hat sich angemeldet.</p>', htmlspecialchars($benutzerName));

Lo!