Einzelnen Beitrag anzeigen
  #15 (permalink)  
Alt 22.05.2014, 20:36
mermshaus mermshaus ist offline
Erfahrener Benutzer
XHTMLforum-Mitglied
 
Registriert seit: 13.07.2006
Beiträge: 745
mermshaus ist ein wunderbarer Anblickmermshaus ist ein wunderbarer Anblickmermshaus ist ein wunderbarer Anblickmermshaus ist ein wunderbarer Anblickmermshaus ist ein wunderbarer Anblickmermshaus ist ein wunderbarer Anblick
Standard

In #6 steht zum Beispiel:

PHP-Code:
<input … value="<?php echo $ruser?>" />
Dort ist keine korrekte Behandlung des Kontextwechsels von PHP nach HTML zu erkennen. Die sähe beispielsweise so aus:

PHP-Code:
<input … value="<?php echo htmlspecialchars($ruserENT_QUOTES'UTF-8'); ?>" />
Das meinte ich. Da haben wir uns wohl missverstanden.

Zitat:
Zitat von knuff
in der datenbank landen die originaldaten, aber natürlich gefiltert oder soll ich mir schadcode in die db holen?
Du musst lediglich den entsprechenden Kontextwechsel (wenn die Daten in HTML oder PDF oder TXT oder CSV oder eine Mail oder ein Bild oder… eingesetzt werden) an der Stelle passend behandeln, an der er stattfindet. Und eben nicht schon vorher, wenn du noch gar nicht weißt, auf welche Weise du die Daten ausgeben wirst.

Zitat:
und die daten werden nicht für die ausgabe in html code aufbereitet. die daten werden einfach von der register.php für den eintrag in die db gefiltert und wiederum wenn nötig an das formular zurückgegeben.
Wenn du htmlspecialchars anwendest, bevor du die Daten in die Datenbank schreibst, bereitest du sie für die Ausgabe im HTML-Kontext vor.

Zitat:
woher weißt du ob ich htmlspecialchars an der falschen stellen einsetze? das taucht in den code teilen die ich gepostet habe gar nicht auf?
Also… Ich habe gepostet, weil es nicht auftauchte. Dann hast du mir gesagt, wann du htmlspecialchars aufrufst (vor dem Eintragen der Daten in die Datenbank). Das habe ich dann als die falsche Stelle bezeichnet, weil die passende Behandlung von Kontextwechseln Sache der Ausgabe ist, da erst dort bekannt ist, in welchem Format die Daten ausgegeben werden sollen.
Mit Zitat antworten