dedlfix: HTML/SQL

Beitrag lesen

echo $begrüßung;

echo '<input name="notiz[' . $row['id'] . ']" type="textarea" cols="50" rows="10" value="' . $row['notiz'] . '"></input>';
Aber in der Spalte "notiz" gibt es Sonderzeichen, wie z.B. " ... und dadurch hört das alles beim ersten ", was in der Datenbank drin steht, auf.

Ja, und das sind noch die harmlosen Fälle. Das was du da fabriziert hast, ist eine typische XSS-Lücke. (Man findet sie oft auf Webseiten. Einfach mal harmlos aussehende Eingabefelder mit "> malträtieren ...)

Wie kann ich das verhindern?

Indem du HTML-eigene Zeichen maskierst. PHP bietet hierfür die Funktion htmlspecialchars() an.

echo "$verabschiedung $name";