Löschen bestimmter Passagen aus einem Gästebucheintrag
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
aktivieren
ausgabe
bildschirm
code
datenbank
ende
erscheinen
funktion
jemand
machen
normalfall
not
originaltext
problem
server
set
speichern
text
zeichen
zeigen
-
Ich habe vor gar nicht Allzulangem ein kleines Problem bei meinem Gästebuch festgestellt:
Mit Hilfe von PHP JAVA und HTML Befehlen ist es beliebig möglich, meine Seite zu beeinflussen. Wie kann ich das abstellen?
Muss ich da was am Quellcode ändern, damit die Passagen gelöscht werden? was geht sonst noch? -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
einfach
damit löschst du alle html-tags aus dem eintragstrip_tags($gästebucheintrag);
mfg
ps: JAVA ist NICHT javascript -
syberpsace schrieb:
ps: JAVA ist NICHT javascript
Sorry, da wollte ich abkürzen. Das soll Javascript heißen.
Kann ich php und Javascript noch irgendwie rausholen? -
Statt striptags sollte htmlspecialchars genutzt werden, um den Originaltext des Users beizuubehalten. (Villeicht will jemand nurn Codeschnippsel zeigen...). Weiterhin ist wichtig das bei der Ausgabe anzuwenden, nicht beim Speichern in die Datenbank. (Man kanns auch, aber man bekommt am Ende immer nur Probleme damit.)
€dit: JavaScript wird durch specialchars und striptags auch entschärft. PHP sollte man im Normalfall sowie nicht ausführen können (außer du nutzt eval() oder so...) Das einzige wovor man sich noch schützen sollte sind SQL Injections. Aber das musst du bei Lima nicht, da magic_quotes an sind (passiert automatisch), besser ist natürlich aber immer alles manuell zu machen, falls man den Server wechselt ;)
Beitrag zuletzt geändert: 23.9.2009 20:26:46 von nikic -
nikic schrieb:
Statt striptags sollte htmlspecialchars genutzt werden, um den Originaltext des Users beizuubehalten. (Villeicht will jemand nurn Codeschnippsel zeigen...). Weiterhin ist wichtig das bei der Ausgabe anzuwenden, nicht beim Speichern in die Datenbank. (Man kanns auch, aber man bekommt am Ende immer nur Probleme damit.)
€dit: JavaScript wird durch specialchars und striptags auch entschärft. PHP sollte man im Normalfall sowie nicht ausführen können (außer du nutzt eval() oder so...) Das einzige wovor man sich noch schützen sollte sind SQL Injections. Aber das musst du bei Lima nicht, da magic_quotes an sind (passiert automatisch), besser ist natürlich aber immer alles manuell zu machen, falls man den Server wechselt ;)
Soll das heißen, ich schreibe
?htmlspecialchars("Text, der ausgegeben werden soll")
-
maechte-der-elemente schrieb:
nikic schrieb:
Statt striptags sollte htmlspecialchars genutzt werden, um den Originaltext des Users beizuubehalten. (Villeicht will jemand nurn Codeschnippsel zeigen...). Weiterhin ist wichtig das bei der Ausgabe anzuwenden, nicht beim Speichern in die Datenbank. (Man kanns auch, aber man bekommt am Ende immer nur Probleme damit.)
€dit: JavaScript wird durch specialchars und striptags auch entschärft. PHP sollte man im Normalfall sowie nicht ausführen können (außer du nutzt eval() oder so...) Das einzige wovor man sich noch schützen sollte sind SQL Injections. Aber das musst du bei Lima nicht, da magic_quotes an sind (passiert automatisch), besser ist natürlich aber immer alles manuell zu machen, falls man den Server wechselt ;)
Soll das heißen, ich schreibe
?htmlspecialchars("Text, der ausgegeben werden soll")
Du schreibst: $var = htmlspecialchars($_POST['var']);
PS: "Javascript" kürzt man "JS" ab -
Hallo.. nein!
htmlspecialchars("Text, der ausgegeben werden soll") -> Text, der ausgegeben werden soll
htmlspecialchars("<b>Text, der ausgegeben werden soll</b>") -> <b>Text, der ausgegeben werden soll</b>
<b>Text, der ausgegeben werden soll</b> wird in HTML als <b>Text, der ausgegeben werden soll</b> dargestellt!
The translations performed are:
* '&' (ampersand) becomes '&'
* '"' (double quote) becomes '"' when ENT_NOQUOTES is not set.
* ''' (single quote) becomes ''' only when ENT_QUOTES is set.
* '<' (less than) becomes '<'
* '>' (greater than) becomes '>'
Gruß
illuxio -
also ich würde das mit der php-funktion htmlentities($str) machen! da wird der beitrag dann genauso, wie er eingegeben wurde angezeit, aber kann nicht deine seite beeinflussen, weil alle zeichen, die für die scriptsprachen erforderlich sind, um sie zu "aktivieren" oder brauchbar zu machen, ersetzt werden. die bildschirmausgabe erfolgt jedoch normal, es wird also, wenn du ">" eingibts, ">" auf dem bildschirm erscheinen, im quelltext steht aber ">". das macht das ganze somit sicher!
-
dynamic-search schrieb:
also ich würde das mit der php-funktion htmlentities($str) machen! da wird der beitrag dann genauso, wie er eingegeben wurde angezeit, aber kann nicht deine seite beeinflussen, weil alle zeichen, die für die scriptsprachen erforderlich sind, um sie zu "aktivieren" oder brauchbar zu machen, ersetzt werden. die bildschirmausgabe erfolgt jedoch normal, es wird also, wenn du ">" eingibts, ">" auf dem bildschirm erscheinen, im quelltext steht aber ">". das macht das ganze somit sicher!
Bremst das auch JS aus? -
ja, alle scripts, die du mit html einfügen kannst, werden dann nicht mehr ausgeführt, aber trotzdem angezeigt!
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage