Jan: Post-Variablen leer?

Hallo Leute!

Ich geb's gleich mal zu, hab schon seit Jahren kein PHP mehr angewendet. Zum ersten Mal auch auf dem neuen Server (HostEurope).

Eigentlich sollte es ein total simples Formular sein, doch es funktioniert nicht.

Habe folgendes Formular:

    <form name="Formular" action="formsend.php" method="post" enctype="text/plain" onSubmit="return chkFormular()">  
    <table width="600" cellpadding="5" cellspacing="5" border="0">  
     <tr>  
      <td width="150"><b>Name:</b></td>  
      <td width="450"><input size="50" type="text" name="Name" value=""></td>  
     </tr>  
     <tr>  
      <td width="150"><b>Strasse:</b></td>  
      <td width="450"><input size="50" type="text" name="Strasse" value=""></td>  
     </tr>  
     <tr>  
      <td width="150"><b>Plz/Ort:</b></td>  
      <td width="450"><input size="50" type="text" name="Plz_Ort" value=""></td>  
     </tr>  
     <tr>  
      <td width="150"><b>Land:</b></td>  
      <td width="450"><input size="50" type="text" name="Land" value=""></td>  
     </tr>  
     <tr>  
      <td width="150"><b>eMail:</b></td>  
      <td width="450"><input size="50" type="text" name="eMail" value=""></td>  
     </tr>  
     <tr>  
      <td width="150"><b>Ich bestelle:</b></td>  
      <td width="450"><input size="4" type="text" name="Buch" value="0"> Bücher (&euro; 22,--, inkl. P&V)<br>  
            <input size="4" type="text" name="CD" value="0"> CDs (&euro; 7,--, inkl. P&V)</td>  
     </tr>  
     <tr>  
      <td colspan="2" align="center"><input type="submit" size="25" value="Abschicken">&nbsp;&nbsp;&nbsp;<input type="Reset" size="25" value="Reset"></td>  
     </tr>  
    </table></form>

Dazu kommt folgender PHP-Code zum Einsatz:

<?  
echo $_POST["Name"];  
$Name    = $_POST['Name'];  
$Strasse = $_POST["Strasse"];  
$Plz_Ort = $_POST["Plz_Ort"];  
$Land    = $_POST["Land"];  
$eMail   = $_POST["eMail"];  
$Buch  = $_POST["Buch"];  
$CD    = $_POST["CD"];  
$to   = "jan@sosti.org";  
$subject = "Bestellung Buch/CD";  
$body  = "Name: ".$Name."\nStraße: ".$Strasse."\nPlz/Ort: ".$Plz_Ort."\nLand: ".$Land."\neMail: ".$eMail."\nBücher: ".$Buch."\nCDs: ".$CD."\n";  
$header  = "From: ".$Name." <".$eMail.">\n";  
mail($to,$subject,$body,$header);  
?>

Noch ein Hinweis zum PHP-Code: Ich hatte anfangs die Variablen innerhalb der Anführungszeihen, also z.B. $header = "From: $Name <$eMail>";

Habs dann nur abgeändert, weil ich dachte es könnte daran liegen. Hab es auch schon mit Get probiert, aber auch da bringt er mir nur leere Werte ;o(

Das Mail an sich wird aber verschickt.

Weiß jemand woran es liegen könnte?

Gruß, Jan

  1. Laß' Dir mal phpinfo() ausgeben, das könnte recht informativ sein. Ansonsten fällt mir auf, dass Du das Subject nicht korrekt kodierst und Dein HTML-Quelltext kleinere Fehler (unkodierte Und-Zeichen/Umlaute) enthält, von mangelnder Semantik ganz zu schweigen (Die Beschreibungen für input-Elemente nennt man label).

    Gruß, LX

    --
    X-Self-Code: sh:( fo:) ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: Unusual
    X-Please-Search-Archive-First: Absolutely Yes
    1. Laß' Dir mal phpinfo() ausgeben, das könnte recht informativ sein. Ansonsten fällt mir auf, dass Du das Subject nicht korrekt kodierst und Dein HTML-Quelltext kleinere Fehler (unkodierte Und-Zeichen/Umlaute) enthält, von mangelnder Semantik ganz zu schweigen (Die Beschreibungen für input-Elemente nennt man label).

      Ich weiß das vor allem bei den Umlauten die Kodierungen fehlen, was mir aber ehrlich gesagt egal ist, es handelt sich hierbei nur um eine kleine 0815-Page, die ich nur unter Protest gemacht hab *ggg*

      Laut der phpinfo ist die variables_order bei "EGPCS", also das P steht ja für Post, demzufolge sollte hier kein Fehler liegen. Aber woran kann es noch liegen, dass die Post-Variablen leer sind?

      Gruß, Jan

  2. Hi,

    <form name="Formular" action="formsend.php" method="post" enctype="text/plain"

    Lass das enctype-Attribut weg.

    MfG ChrisB

    --
    „This is the author's opinion, not necessarily that of Starbucks.“
    1. Hi,

      <form name="Formular" action="formsend.php" method="post" enctype="text/plain"

      Lass das enctype-Attribut weg.

      MfG ChrisB

      Ich bin echt umnachtet, genau das wars, danke! ;o)

      Gruß, Jan

    2. Hello,

      <form name="Formular" action="formsend.php" method="post" enctype="text/plain"

      Lass das enctype-Attribut weg.

      Hätte ich jetzt nicht gedacht...
      Die erste Idee war zwar auch "multipart/form-data" aber dann habe ich geschaut, ob ein Fileupload stattfindet und weil keiner vorhande ist, dachte ich, dann kann es am Ecryption Type doch nicht liegen...

      Was ist denn nun Sache?

      Ich war immer der Meinung, dass weggelassenes ectype-Attribut == text/plain  wäre

      Liebe Grüße aus Syburg bei Dortmund

      Tom vom Berg

      --
      Nur selber lernen macht schlau
      http://bergpost.annerschbarrich.de
      1. Hi,

        Ich war immer der Meinung, dass weggelassenes ectype-Attribut == text/plain  wäre

        "Der Standardwert für dieses Attribut ist »application/x-www-form-urlencoded«."

        Gruß,
        Andreas.

        1. Hello,

          Ich war immer der Meinung, dass weggelassenes ectype-Attribut == text/plain  wäre

          "Der Standardwert für dieses Attribut ist »application/x-www-form-urlencoded«."

          Ich danke Dir für den Link,

          Dann ist er ja klar, dass das nicht einfach so funktioniert.

          Liebe Grüße aus Syburg bei Dortmund

          Tom vom Berg

          --
          Nur selber lernen macht schlau
          http://bergpost.annerschbarrich.de
          1. Hello,

            "Der Standardwert für dieses Attribut ist »application/x-www-form-urlencoded«."

            Ich danke Dir für den Link,

            Dann ist er ja klar, dass das nicht einfach so funktioniert.

            Steht dem eigentlich etwas entgegen, IMMER multipart/form-data zu verwenden, wenn es nicht einen ganz bestimmten Grund für eine andere Codierung gibt?

            Liebe Grüße aus Syburg bei Dortmund

            Tom vom Berg

            --
            Nur selber lernen macht schlau
            http://bergpost.annerschbarrich.de