Saintsam: Formular verschicken / aber ohne "leere" Felder

Beitrag lesen

Moin Moin,

ich habe mir für eine "Art" Webshop ein php-Formular so umgebaut, dass es mir alle Angaben per eMail zuschickt.

Mein Problem: ich habe ein haufen Text-Felder die beim Versand evtl. leer sind oder mit einer 0 gefüllt.

Damit ich diese Felder bzw. die nicht mit der Mail bekommen müsste ich mein scipt so umbauen das es mir z.B. sagt: wenn das Feld (name="xy") leer ist oder eine 0 drinsteht - die Daten bitte nicht verschicken.

Und genau das bekomme ich einfach nicht hin - und BITTE BITTE BITTE euch um Hilfe:

Hier das Script:

<?php

$Empfaenger = "meineadresse@meinemserver.com";

if($_REQUEST['Send'])
{

if(empty($_REQUEST['Name']) || empty($_REQUEST['Vorname']) || empty($_REQUEST['Email']) || empty($_REQUEST['Nachricht']) || empty($_REQUEST['Crew_Nr']) || empty($_REQUEST['Strasse']) || empty($_REQUEST['Ort']) || empty($_REQUEST['PLZ']))
 {
  echo "<center><font size=5><b>Bitte gehen Sie <a href="javascript:history.back();">zur&uuml;ck</a> und f&uuml;llen Sie alle Felder aus!</b></font></center>";
 }
 else
 {
  $Mailbetreff = "Kontakt: ";
  $Mailbetreff .= $_REQUEST['Betreff'];

$Trenner = md5(uniqid(time()));

$Header = "From: ".$_REQUEST['Email'];
  $Header .= "\n";
  $Header .= "MIME-Version: 1.0";
  $Header .= "\n";
  $Header .= "Content-Type: multipart/mixed; boundary=$Trenner";
  $Header .= "\n\n";
  $Header .= "This is a multi-part message in MIME format";
  $Header .= "\n";
  $Header .= "--$Trenner";
  $Header .= "\n";
  $Header .= "Content-Type: text/plain";
  $Header .= "\n";
  $Header .= "Content-Transfer-Encoding: 8bit";
  $Header .= "\n\n";
  $Header .= "Sie haben folgende Nachricht erhalten: \n\n";
  while(list($Formularfeld, $Wert)=each($_REQUEST))
  {
   if($Formularfeld!="Send" && $Formularfeld!="Anhang")
   {
    $Header .= $Formularfeld.": ".$Wert."\n";
   }
  }
  $Header .= "\nDatum/Zeit: ";
  $Header .= date("d.m.Y H:i:s");
  $Header .= "\n";
  $Header .= "--$Trenner";
  $Header .= "\n";
  $Header .= "Content-Type: ";
  $Header .= $_FILES['Anhang']['type'];
  $Header .= "; name=";
  $Header .= $_FILES['Anhang']['name'];
  $Header .= "\n";
  $Header .= "Content-Transfer-Encoding: base64";
  $Header .= "\n";
  $Header .= "Content-Disposition: attachment; filename=";
  $Header .= $_FILES['Anhang']['name'];
  $Header .= "\n\n";
  $Dateiinhalt = fread(fopen($_FILES['Anhang']['tmp_name'], "r"), $_FILES['Anhang']['size']);
  $Header .= chunk_split(base64_encode($Dateiinhalt));
  $Header .= "\n";
  $Header .= "--$Trenner--";

mail($Empfaenger, $Mailbetreff, "", $Header);
  echo "<center><font size=5><b>Die Daten wurden verschickt!</b><br>Bitte gehen Sie <a href="javascript:history.back();">hier zur&uuml;ck!</a><br> Danke!</font></center>";
   }
}
else
{
?>

und das form:

<form action="<?php echo$_SERVER['PHP_SELF']; ?>" name="anfrage" enctype="multipart/form-data" method="post">

dann folgen ein haufen text-felder - von denen ich aber nur die mit der Email verschicken möchte die auch ausgefüllt wurden.

Wie müsste ich den Code ändern?

VIELEN DANK IM VORAUS!!!

Gruss Sam!