Formdaten nicht maskiert bekommen?
Tim
- php
Hallo Forum!
Ich habe folgendes Problem:
Ich lasse mir per POST eine Text-Area schicken. Hier drinn steht html-Code, der in eine HTML-Datei geschrieben werden soll.
Problem ist, dass zB Anführungszeichen " maskiert werden. Ich kann das aber nicht gebrauchen. Danach ist der HTML-Tag kaputt.
Beispiel:
<img src="test.jpg />
Und ich bekomme:
<img src="test.jpg" />
Und ich brauche aber einfach das erste, den reinen Text, ohne Maskierung. Ich bin der einzige der da postet, von daher wird da auch nix gehackt (SSL + htaccess)
Weiß jemand da was?
Danke
T
Hallo Tim,
Problem ist, dass zB Anführungszeichen " maskiert werden. Ich kann das aber nicht gebrauchen. Danach ist der HTML-Tag kaputt.
<img src="test.jpg />
Und ich bekomme:
<img src="test.jpg" />
Du bist ein Opfer der Magic Quotes.
Und ich brauche aber einfach das erste, den reinen Text, ohne Maskierung.
Es ist *immer* sinnvoll, mit der Roheingabe zu arbeiten und Behandlung stets dann vorzunehmen, wenn sie bei einer Ausgabe benötigt wird - und dann die richtige Behandlung anzuwenden. Deaktiviere daher die Magic Quotes, wenn Du keinen Einfluss auf die Serverkonfiguration hast, wende Beispiel #2 an - und zwar einmalig zu Skriptbeginn.
Freundliche Grüße
Vinzenz
Hello lieber Vinzenz,
Es ist *immer* sinnvoll, mit der Roheingabe zu arbeiten und Behandlung stets dann vorzunehmen, wenn sie bei einer Ausgabe benötigt wird - und dann die richtige Behandlung anzuwenden.
http://www.php.net/manual/de/security.magicquotes.disabling.php
Das ist mir zu knapp formuliert:
Deaktiviere daher die Magic Quotes,
Dazu sollte sich Tim aber auch über die Folgen bewusst sein, die dies haben kann, wenn er selber keinerlei Maßnahmen ergreift VOR der Weitergabe an nachfolgende Bearbeitungsschritte. Hier ist ja nicht nur die "Ausgabe" von Interesse, sondern speziell die Verwendung dieser Rohdaten z.B. bei Datenbanken, Mailern. Mail-Funktionen, Zugriffen auf Verzeichnisstrukturen und Scripte und ähnlichen weiteren Verarbeitungsschritten.
Liebe Grüße aus Syburg bei Dortmund
Tom vom Berg
Hallo,
» Es ist *immer* sinnvoll, mit der Roheingabe zu arbeiten und Behandlung stets dann vorzunehmen, wenn sie bei einer Ausgabe benötigt wird - und dann die richtige Behandlung anzuwenden.
http://www.php.net/manual/de/security.magicquotes.disabling.php
Dazu sollte sich Tim aber auch über die Folgen bewusst sein, die dies haben kann, wenn er selber keinerlei Maßnahmen ergreift VOR der Weitergabe an nachfolgende Bearbeitungsschritte. Hier ist ja nicht nur die "Ausgabe" von Interesse, sondern speziell die Verwendung dieser Rohdaten z.B. bei Datenbanken, Mailern. Mail-Funktionen, Zugriffen auf Verzeichnisstrukturen und Scripte und ähnlichen weiteren Verarbeitungsschritten.
ja, das sind alles Ausgaben. Die Aufbereitung hat kontextgerecht zu erfolgen. Die Magic Quotes sind nicht in der Lage, dies zu leisten. Für *keinen* der von Dir aufgezählten Zwecke.
Und ja: Genau deswegen ist es eine verdammt gute Idee, die Magic Quotes auszuschalten bzw. ihre Auswirkungen rückgängig zu machen. Und nochmals ja: jeder dieser Verarbeitungsschritte hat andere Anforderungen. Deswegen ist es so wichtig, immer und überall mit den Rohdaten zu arbeiten und stets genau die Behandlung zu verwenden, die der aktuellen Aufgabe angemessen ist. Bei Verschachtelung von Kontexten (z.B. Javascript-Kontext in einem HTML-Kontext) erfolgt die Behandlung zwiebelschalenartig von innen nach außen.
Freundliche Grüße
Vinzenz
Hello,
Hallo,
» Es ist *immer* sinnvoll, mit der Roheingabe zu arbeiten und Behandlung stets dann vorzunehmen, wenn sie bei einer Ausgabe benötigt wird - und dann die richtige Behandlung anzuwenden.
http://www.php.net/manual/de/security.magicquotes.disabling.phpDazu sollte sich Tim aber auch über die Folgen bewusst sein, die dies haben kann, wenn er selber keinerlei Maßnahmen ergreift VOR der Weitergabe an nachfolgende Bearbeitungsschritte. Hier ist ja nicht nur die "Ausgabe" von Interesse, sondern speziell die Verwendung dieser Rohdaten z.B. bei Datenbanken, Mailern. Mail-Funktionen, Zugriffen auf Verzeichnisstrukturen und Scripte und ähnlichen weiteren Verarbeitungsschritten.
ja, das sind alles Ausgaben.
Also halten wir fest:
innerhalb des Scriptes arbeitet man am besten mit den Rohdaten und sowie diese dann das Script verlassen sollen, egal ob
oder innerhalb des Scriptes verwendet werden sollen für
(ich schreibe dies hier absichtlich als zwei getrennten Punkte!)
müssen diese Daten VON AUSSEN besonders behandelt werden.
Jeder Dateninput VON AUSSEN ist böse[tm]
Bist Du damit einverstanden?
Liebe Grüße aus Syburg bei Dortmund
Tom vom Berg
Hallo,
müssen diese Daten VON AUSSEN besonders behandelt werden.
Jeder Dateninput VON AUSSEN ist böse[tm]
Bist Du damit einverstanden?
auch interne Daten müssen entsprechend behandelt werden. Es gilt ja nicht nur, dass Eingaben böse sein können. Auch gutartige und völlig korrekte Daten können bei der Verarbeitung zu Problemen führen; ein Beispiel wären Namen wie O'Brien beim dynamischen Zusammensetzen von SQL-Zeichenketten.
Freundliche Grüße
Vinzenz
Hello,
Hallo,
müssen diese Daten VON AUSSEN besonders behandelt werden.
Jeder Dateninput VON AUSSEN ist böse[tm]
Bist Du damit einverstanden?auch interne Daten müssen entsprechend behandelt werden. Es gilt ja nicht nur, dass Eingaben böse sein können. Auch gutartige und völlig korrekte Daten können bei der Verarbeitung zu Problemen führen; ein Beispiel wären Namen wie O'Brien beim dynamischen Zusammensetzen von SQL-Zeichenketten.
Na sind Überweisungen an die Datenbank nun "interne Daten" oder sind es "Ausgaben"?
Da solltest Du Dich schon mal entscheiden. :-)
Ich weiß ja, wie es geht oder nicht geht, aber Tim möchte doch eventuell eine merkbare Definition zurückbehalten.
Liebe Grüße aus Syburg bei Dortmund
Tom vom Berg
echo $begrüßung;
Na sind Überweisungen an die Datenbank nun "interne Daten" oder sind es "Ausgaben"?
Es ist völlig Schnuppe wo die Daten herkommen. Sobald sie in einen anderen Kontext gebracht werden sollen, sind sie diesem entsprechend zu behandeln.
echo "$verabschiedung $name";
Hello,
Na sind Überweisungen an die Datenbank nun "interne Daten" oder sind es "Ausgaben"?
Es ist völlig Schnuppe wo die Daten herkommen. Sobald sie in einen anderen Kontext gebracht werden sollen, sind sie diesem entsprechend zu behandeln.
Und lässt sich das für einen Anfänger auch verständlich formulieren?
*#!+µ##*
Liebe Grüße aus Syburg bei Dortmund
Tom vom Berg
echo $begrüßung;
» » Na sind Überweisungen an die Datenbank nun "interne Daten" oder sind es "Ausgaben"?
» Es ist völlig Schnuppe wo die Daten herkommen. Sobald sie in einen anderen Kontext gebracht werden sollen, sind sie diesem entsprechend zu behandeln.
Und lässt sich das für einen Anfänger auch verständlich formulieren?
Welchen Teil davon hat der Anfänger denn nicht verstanden?
echo "$verabschiedung $name";
Hello,
Welchen Teil davon hat der Anfänger denn nicht verstanden?
Bla, bla, bla...
Wo ist er denn, der Fragesteller?
Lass uns das Geplänkel hier oben ruhn lassen und hilf mir lieber mal bei
https://forum.selfhtml.org/?t=184208&m=1221581 :-)
Da komme ich im Moment nicht weiter. :-(
Liebe Grüße aus Syburg bei Dortmund
Tom vom Berg
echo $begrüßung;
Lass uns das Geplänkel hier oben ruhn lassen und hilf mir lieber mal bei
https://forum.selfhtml.org/?t=184208&m=1221581 :-)
Da musst du Sven oder Christian fragen. Soweit ich mitbekommen habe, gab es bis vor kurzem dieses Problem mit dem Redaktionsbereich, bevor sie sich ein "echtes" Zertifikat zulegten.
echo "$verabschiedung $name";
Hello,
Da musst du Sven oder Christian fragen. Soweit ich mitbekommen habe, gab es bis vor kurzem dieses Problem mit dem Redaktionsbereich, bevor sie sich ein "echtes" Zertifikat zulegten.
Also doch leider kein Dummy-Fehler?
Es waren ja auch schon ein paar Kollegen daran, die dachten, dass es ganz simpel wäre.
Aber laut einigen Beschreibungen ist es simpel, nur leider funktionieren die Beschreibugnen nicht.
Liebe Grüße aus Syburg bei Dortmund
Tom vom Berg