Wie entferne ich Backslash von den Benutzern Eingang
Frage
Ich erhalte verschwimmen diese: P
function escape($string)
{
$string = stripslashes($string);
if (function_exists('mysql_real_escape_string')) {
return mysql_real_escape_string($string, $this->connection);
} else {
return mysql_escape_string($string);
}
}
$content = '""""""test\'te%%%%st`test_huhu\'_';
echo '<br>output 1 = '.stripslashes($content);
echo '<br>output 2 = '.$db->escape($content);
Die Ausgabe
output 1 = """"""test'te%%%%st`test_huhu'_
output 2 = \"\"\"\"\"\"test\'te%%%%st`test_huhu\'_
Wie man output 2
gleiche sein wird wie output 1
und warum die output 2
so sein?
Lösung
mysql_real_escape_string
entkommt alle "
und '
Deshalb sollten Sie alle diese Hiebe bekommen. Wenn Sie die Schrägstriche entfernen, bevor die Daten in einer Datenbank eingegeben sind Sie für Angriffe offen die
ist sehr schlecht für die Sicherheit nicht wahr?
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow