HTML/SQL
hattrix
- datenbank
Hallo,
ich habe folgendes input:
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.
Wie kann ich das verhindern?
Fehler gefunden.
statt input kommt textarea hin
Hello,
statt input kommt textarea hin
dann lege ich dir nahe, zumindest mal den Text "</textarea>" aus der Datenbank auszulesen. Du hast ein generelles Problem, dass sich nur durch geeignete Maskierung entsprechender Zeichen lösen lässt.
MfG
Rouven
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";