echo $begrüßung;
Zwei kleine Striche und schon ist die Welt in Ordnung!
Nein, ist sie nicht. Tipp doch mal
'><script>alert(23)</script>
in dein Telefonnummernfeld ein.
Lehrsatz: Wann immer du Werte in einen anderen Kontext bringst, musst du sie dem Kontext entsprechend behandeln!
Wenn du das nicht beachtest, bekommst du entweder Fehler(meldungen) oder Sicherheitslücken.
Für HTML müssen die HTML-eigenen Zeichen berücksichtigt werden. PHP kennt dafür die Funktion htmlspecialchars().
Weitere Beispiele:
- SQL-Statements. Jedes DBMS hat seine eigenen Sonderzeichen und meist auch eine Funktion in der API, die sich darum kümmert. PHP kennt für MySQL mysql_real_escape_string().
- Für URLs gibt es urlencode() und anschließend noch htmlspechialchars().
echo "$verabschiedung $name";