Stripslashes verhält sich seltsam
Micha Kießling
- php
0 Marc Reichelt0 dedlfix
Hallo alle zusammen,
habe folgendes Problem: Ich versuche vergebens ein Formularstring der per POST übergeben wurde zu säubern...
mein Code:
PHP -Teil:
if (isset($_POST["action"]) && $_POST["action"] == "submit")
{
$title = stripslashes($_POST["title"]);
$body = stripslashes($_POST["body"]);
.
.
.
.
if ($error == "") //in Datenbank eintragen...
{
$date = time();
$title = mysql_escape_string($header);
$body = mysql_escape_string($body);
.
.
.
.
HTML Anweisungen: (2 Formularfelder)
<input name="title" type="text" id="title" style="width: 350px;" value="<?php if (isset($title)) print $title; ?>">
<textarea name="body" rows="7" id="body" style="width: 350px;"><?php if (isset($body)) print $body; ?></textarea>
So. Also das script wird auf der selben Seite ausgeführt, aber wenn ich in das "title" Feld ein '"' eintrage, wird nichts übergeben. Gebe ich den gleichen Wert in das <textarea> Feld ein klappt alles...
Ich versteh das nicht, da bei beiden Feldern der gleiche PHP-"Reinigungscode" verwendet wurde.
Kann mir wohl wer sagen was ich falsch mache? Bin recht am verzweifeln.
ach ja, "magic_quotes_gpc" ist auf On gestellt falls das wer interessant findet ;)
Lieben Gruß Micha
Hallo Micha,
ach ja, "magic_quotes_gpc" ist auf On gestellt falls das wer interessant findet ;)
Schalte das am Besten aus, das ist eine der schlimmsten Sachen die es gibt.
Dann nochmals die Scripts anpassen, und meist lösen sich diese addslashes/stripslashes-Probleme dann in Luft auf... ;-)
Grüße
Marc Reichelt || http://www.marcreichelt.de/
echo $begrüßung;
$title = stripslashes($_POST["title"]);
$title = mysql_escape_string($header);
hieß $title früher mal $header?
echo "$verabschiedung $name";