Escape-Anführungszeichen in eine variable mit PHP
Ich diesen code verwenden, um genefate html
echo "<input type='button' onclick=\"myFunc('$param');\" />";
Alles wäre OK, es sei denn, $param enthält '
oder "
Charakter. Wie sollte es umgesetzt werden, um diese Situationen zu bewältigen?
ps. mysql_real_escape_string($param) wird nicht korrekt funktionieren, wenn ein Benutzer eingegeben "
.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gibt es ein paar Funktionen, die verwendet werden könnten:
Produzieren Sie die folgenden:
Als Damien sagte; addslashes verwenden 🙂
Wenn Sie sich auf eine Benutzereingabe, die Nutzung
htmlentities($param, ENT_QUOTES);
Sehen http://uk.php.net/manual/en/function.htmlentities.php
Wenn das denken über Flucht, Sie müssen immer Fragen
"In dem Kontext will ich entkommen?"
Denn Flucht ist wesentlich dafür, dass die Eingabe nicht interpretiert, in der die Besondere Bedeutung der Ziel -, aber buchstäblich
Tun nicht addslashes verwenden, da es zusammenhangslosen
Wenn Sie das einfügen der Zeichenkette in HTML, Verwendung
wie gesagt.
Den onclick Inhalt Teil ist technisch auf JavaScript, so dass es angebracht sein könnte, zu entkommen die Inhalte mit Funktionen json_encode (es Nebeneffekt ist die JavaScript-spezifische Flucht). Ebenso sollten Sie style-Attribut, würden Sie wollen, zu entkommen die Inhalte mit
(Quelle: http://translate.google.com/translate?u=http%3A%2F%2Fphpfashion.com%2Fescapovani-definitivni-prirucka&ie=UTF8&sl=cs&tl=en)
Zusammenfassung
Verwenden
dann können Sie sicher schließen Sie ihn in den HTML-string
Übergeben, variable aus
htmlspecialchars($pram,ENT_QUOTES)
zuerst
dann schreiben Sie code in einfache HTML -
Hinweis:
mysql_real_escape_string
funktioniert, wenn wir damit umgehen mysqltry mitaddslashes
"
oder eine'
?addslashes
addslashes
?. Zugegeben, @diEcho haben könnte, setzen Sie diese in den code zu, aber es ist da!Dies funktioniert für mich...
Es ist nicht notwendig, um backslaches für die Flucht bei der Verwendung von einfachen Anführungszeichen nach echo. Einzelnes Zitat haben meine Stimme für die Arbeit mit php-und javascript + html-Tags.