Hallo Marcus
Du solltest dir diese PHP Funktion für deine Ausgabe anschauen.
Würde ich mir an deiner Stelle dann aber sehr genau durchlesen, weil man vieles auch durch die Parameter der Funktion steuern kann.
php.net/manual/de/function.htmlspecialchars.php
Wenn man beispielsweise & in normaler Schreibweise und bereits als Zeichenreferenz in der Datenbank stehen hat und beides als & ausgegeben weden soll ist der Parameter double_encode zu beachten. Wenn man diesen Parameter auf false setzt bekommt man mit nicht vorhandenen benannten Entities dann noch Probleme unter Umständen.
Die einfachen und doppelten Anführungszeichen braucht man eigentlich nur in den Fällen zu beachten wenn man diese in HTML Attributen wieder aus der Datenbank ausgibt.
Das könnte unter Umständen bei dir auch der Fall sein.
Du hast da eine Zeile stehen in deinen erstem Beitrag.
echo \'<option value="\'.$cat[\'Angebot\'].\'">\'.$cat[\'Angebot\'].\'</option>\';
Für den ersten Fall müsstest du zumindest das doppelte Anführungszeichen auch beachten weil es prinzipiell in der Datenbank auch vorkommen könnte. Für die zweite Verwendung wäre das nicht unbedingt der Fall.
Entweder machst du vorher eine Variable und tauscht in beiden Fällen in Hinblick des worst Case aus oder behandelst halt eben beide Fälle unterschiedlich.
Oder du änderst alle deine Probleme in der Datenbank selbst was den Nachteil hat das jeder neuer Eintrag wieder zu einem Fehler führen kann.
Gruß
Jörg
Zufällige Umleitung zu der Startseite einer meiner Domains
Meine ungewöhnlichen Tools
Beitrag erstellen
EinloggenKostenlos registrieren