Micha Kießling: Stripslashes verhält sich seltsam

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

  1. 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/

    --
    Linux is like a wigwam - no windows, no gates and an Apache inside!
    Selfcode: ie:{ fl:| br:> va:} ls:< fo:} rl:( n4:( ss:) de:> js:| ch:? sh:| mo:) zu:)
    http://emmanuel.dammerer.at/selfcode.html
  2. echo $begrüßung;

    $title = stripslashes($_POST["title"]);

    $title = mysql_escape_string($header);

    hieß $title früher mal $header?

    echo "$verabschiedung $name";