aus "hallo" wird \"hallo\" ! wieso?
Melli
- php
0 Hamza Raya0 Manfred0 wahsaga0 Thomas Luethi0 wahsaga
Hallo,
ich habe ein Problem. Ich benutze ein fertiges PHP-Skript um Kommentare zu einer Seite zu speichern. Wenn ich jetzt in das Formular etwas mit Anführungszeichen(egal ob " oder ') eingebe wird es mit einem \ davor abgespeichert.
Könnt Ihr euch denken warum?
mfg Melli
Hallo Melli
Könnt Ihr euch denken warum?
Ja. Aber poste doch mal die Zeile wo das "Hallo" ausgegeben wird.
Gruss
Hallo Melli
Könnt Ihr euch denken warum?
Ja. Aber poste doch mal die Zeile wo das "Hallo" ausgegeben wird.
Gruss
Hallo,
EINLESEN:
$comment_text = trim($_POST['comment_text']);
$datei = fopen($comment_file, "a");
flock($datei, 2);
fwrite($datei, time()."|".$_SERVER["REMOTE_ADDR"]."|".$name."|".$comment_text."\n");
flock($datei, 3);
fclose($datei);
}
AUSGABE:
for ($i = 0; $i < $comment_total_entries; $i++)
{
$parts = explode("|", $data[$i]);
$kommentar = $parts[3];
echo $kommentar;
}
Das ist das ganze in Kurzform. Ich hoffe das hilft dir weiter. Es kann aber eigentlich nix mit der Ausgabe zu tun haben, weil es schon mit >"< statt >"< im Textfile gespeichert wird.
mfg Melli
Hi Melli...
EINLESEN:
$comment_text = trim($_POST['comment_text']);
Probier es so:
$comment_text = trim(stripslashes($_POST['comment_text']));
Damit sollte dem Inhalt die Backslashes genommen werden...
Gruss David
Hallo,
ich nehme mal an, daß das daran liegt, daß in der php.ini magic_quotes angeschaltet ist.
Viele Grüße
Manfred
hi,
ich habe ein Problem. Ich benutze ein fertiges PHP-Skript um Kommentare zu einer Seite zu speichern. Wenn ich jetzt in das Formular etwas mit Anführungszeichen(egal ob " oder ') eingebe wird es mit einem \ davor abgespeichert.
Könnt Ihr euch denken warum?
http://www.dclp-faq.de/q/q-magic-quotes.html
gruss,
wahsaga
Hallo,
Wenn ich jetzt in das Formular etwas mit Anführungszeichen(egal ob " oder ') eingebe wird es mit einem \ davor abgespeichert.
magic quotes sind vermutlich in der php.ini eingeschaltet.
http://www.php.net/manual/en/ref.info.php#ini.magic-quotes-gpc
Du kannst mit get_magic_quotes_gpc() nachschauen, ob das so ist.
http://www.php.net/manual/en/function.get-magic-quotes-gpc.php
Du kannst die Backslashes mit stripslashes() wegmachen
http://www.php.net/manual/de/function.stripslashes.php
N.B. es ist nicht moeglich, es mit ini_set() zu loesen.
(ini_set "kommt zu spaet", wenn das Skript anlaeuft,
hat PHP die Backslashes schon an die Parameter angefuegt...)
Gruesse,
Thomas
hi,
N.B. es ist nicht moeglich, es mit ini_set() zu loesen.
(ini_set "kommt zu spaet", wenn das Skript anlaeuft,
hat PHP die Backslashes schon an die Parameter angefuegt...)
mittels entsprechender angabe in einer .htaccess-datei im script-verzeichnis sollte es doch aber AFAIK gehen, oder?
schliesslich sagt das manual ja auch, dass diese option auch "changeable: PHP_INI_PERDIR" sei ...
gruss,
wahsaga
Hallo wahsaga,
Danke fuer die Anregung.
mittels entsprechender angabe in einer .htaccess-datei im script-verzeichnis sollte es doch aber AFAIK gehen, oder?
Kann gut sein. Diese Moeglichkeit vergesse ich immer.
(Sie ist mir irgendwie suspekt, ich weiss nicht, wieso.)
schliesslich sagt das manual ja auch, dass diese option auch "changeable: PHP_INI_PERDIR" sei ...
Stimmt. Sollte also gehen.
Werde es bei Gelegenheit mal ausprobieren.
Gruesse,
Thomas