hi.
wieso geht das formular nicht.
der dateianhang wir nciht mit gesendet.
habe aber alles richtig gemacht , glaube ich !?!
wieso geht das formular nicht.
der dateianhang wir nciht mit gesendet.
habe aber alles richtig gemacht , glaube ich !?!
PHP-Code:
<?php
# Adresse, an die die Formulardaten gesendet werden sollen:
$mailto = "eclipse_240_hp@gmx.net";
# Maximale Größe des Attachments in Bytes:
$max_attach_size = 500000;
?>
<html>
<head>
<title></title>
</head>
<?php
function check_len(&$check, $field, $max, &$err_field, $err="", $min=0, $min_err="")
{
if (strlen($field) > $max)
{
if ($err == "")
{
$err = 'Feld ist zu lang';
}
$err_field = $err;
$check = false;
}
if (strlen($field) < $min)
{
if ($min_err == "")
{
$min_err = 'Feld ist zu kurz';
}
$err_field = $min_err;
$check = false;
}
}
function check_mail(&$check, $fld, &$err_field, $err='')
{
if (strpos($fld, '@') === false)
{
if ($err=='')
{
$err_field = 'e-Mail fehlerhaft';
} else {
$err_field = $err;
}
$check = false;
}
if (function_exists('checkdnsrr'))
{
list($user, $host) = explode('@', $fld);
if ( checkdnsrr ($host, 'MX') or checkdnsrr ($host, 'A' ) )
{
// echo 'E-Mail ist OK';
} else {
if ($host > ' ')
{
if ($err=='')
{
$err_field = 'Die Angabe "' . $host . '" scheint keine gültige Domain zu sein';
} else {
$err_field = $err;
}
$check = false;
} else {
if ($err=='')
{
$err_field = 'e-Mail unvollständig';
} else {
$err_field = $err;
}
$check = false;
}
}
} else {
// echo 'keine weitere Prüfung';
}
}
if (empty($HTTP_POST_VARS["anrede"])) $HTTP_POST_VARS["anrede"]="Herr,Frau";
if (empty($err_anrede)) $err_anrede=" ";
if (empty($HTTP_POST_VARS["name"])) $HTTP_POST_VARS["name"]="";
if (empty($err_name)) $err_name=" ";
if (empty($HTTP_POST_VARS["vorname"])) $HTTP_POST_VARS["vorname"]="";
if (empty($err_vorname)) $err_vorname=" ";
if (empty($HTTP_POST_VARS["email"])) $HTTP_POST_VARS["email"]="";
if (empty($err_email)) $err_email=" ";
$checked = true;
if (isset($HTTP_POST_VARS["sent"]))
{
check_len($checked, $HTTP_POST_VARS["anrede"],10,$err_anrede,"Eingabe zu lang! Maximale Länge:10",0,"Eingabe erforderlich! Mindesteingabe Länge:1");
check_len($checked, $HTTP_POST_VARS["name"],20,$err_name,"Eingabe zu lang! Maximale Länge:20",0,"Eingabe erforderlich! Mindesteingabe Länge:1");
check_len($checked, $HTTP_POST_VARS["vorname"],20,$err_vorname,"Eingabe zu lang! Maximale Länge:20",0,"Eingabe erforderlich! Mindesteingabe Länge:1");
check_len($checked, $HTTP_POST_VARS["email"],30,$err_email,"Eingabe zu lang! Maximale Länge:30",0,"Eingabe erforderlich! Mindesteingabe Länge:1");
check_mail($checked, $HTTP_POST_VARS["email"], $err_email,"Die e-Mail enthält ungültige Zeichen oder ist ungültig.");
}
if ( empty($HTTP_POST_VARS["sent"]) or (!$checked) )
{
// Wenn Attachment, dann MIME-Mail erstellen:
if (isset($_FILES['probe']['name']) && trim($_FILES['probe']['name']) != "")
{
// Datei einlesen und codieren:
$datei_content = fread(fopen($_FILES['probe']['tmp_name'],"r"),filesize($_FILES['probe']['tmp_name']));
$datei_content = chunk_split(base64_encode($datei_content),76,"\n");
// Boundary festlegen:
$boundary = md5(uniqid(rand()));
// Mail-Header:
$mail_header = "From: ".$mail_name." <".$mail_email.">\n";
$mail_header .= "X-Sender-IP: ".$ip."\n";
$mail_header .= "MIME-Version: 1.0\n";
$mail_header .= "Content-Type: multipart/mixed; boundary=\"".$boundary."\"\n";
$mail_header .= "This is a multi-part message in MIME format.\n";
// Mail-Text:
$mail_header .= "--".$boundary;
$mail_header .= "\nContent-Type: text/plain";
$mail_header .= "\nContent-Transfer-Encoding: 8bit";
$mail_header .= "\n\n".$text;
// Attachment:
$mail_header .= "\n--".$boundary;
$mail_header .= "\nContent-Type: ".$_FILES['probe']['type']."; name=\"".$_FILES['probe']['name']."\"";
$mail_header .= "\nContent-Transfer-Encoding: base64";
$mail_header .= "\nContent-Disposition: attachment; filename=\"".$_FILES['probe']['name']."\"";
$mail_header .= "\n\n".$datei_content;
// Ende:
$mail_header .= "\n--".$boundary."--";
// Sende E-Mail und gebe Fehler bzw. Bestaetigung aus
if (@mail($mailto ,$mail_subject,"",$mail_header,"-f [email]Mail@mydomain.de[/email]")) $sent = true; else $errors[] = "keine Verbindung zum Mailserver - bitte nochmal versuchen";
}
// kein Attachment, normale E-Mail:
else
{
$mail_header = "From: ".$mail_name." <".$mail_email.">\n";
$mail_header .= "X-Sender-IP: $ip\n";
$mail_header .= "Content-Type: text/plain";
if (@mail($mailto,$mail_subject,$text,$mail_header,"-f [email]Mail@mydomain.de[/email]")) $sent = true; else $errors[] = "keine Verbindung zum Mailserver - bitte nochmal versuchen";
}
// Kopie an Absender:
if (isset($sent) && isset($email) && $email != "" && isset($_POST['copy']))
{
if (isset($_FILES['probe']['name']) && trim($_FILES['probe']['name']) != "") $copy_mail_text = "Kopie der versendeten E-Mail:\n\n".$text."\n\nAttachment: ".$_FILES['probe']['name']; else $copy_mail_text = "Kopie der versendeten E-Mail:\n\n".$text;
$header= "From: ".$mailto."\n";
$header .= "X-Sender-IP: ".$ip."\n";
$header .= "Content-Type: text/plain";
@mail($email, $mail_subject, $copy_mail_text, $header,"-f [email]Mail@mydomain.de[/email]");
}
}
if (empty($sent))
{
if(isset($errors))
?><p class="caution">Fehler:</p><ul><?php foreach($errors as $f) { ?><li><?php echo $f; ?></li><?php } ?></ul><br /><?php
}
?>
<form method="post" action="<?php echo basename($_SERVER["PHP_SELF"]); ?>" enctype="multipart/form-data"><div><table cellpadding="4" border="0">
<tr><td valign="top">Anrede:</td><td>
<select size="1" name="anrede"><option value="Herr"<?php if ($HTTP_POST_VARS["anrede"]== 'Herr') echo ' SELECTED="SELECTED"'?>>Herr</option>
<option value="Frau"<?php if ($HTTP_POST_VARS["anrede"]== 'Frau') echo ' SELECTED="SELECTED"'?>>Frau</option>
</select>
</td><td>
<?php echo $err_anrede ?>
</td></tr>
<tr><td valign="top">*Name:</td><td>
<input type="text" name="name" value="<?php echo $HTTP_POST_VARS["name"] ?>">
</td><td>
<?php echo $err_name ?>
</td></tr>
<tr><td valign="top">*Vorname:</td><td>
<input type="text" name="vorname" value="<?php echo $HTTP_POST_VARS["vorname"] ?>">
</td><td>
<?php echo $err_vorname ?>
</td></tr>
<tr><td valign="top">*E-Mail:</td><td>
<input type="text" name="email" value="<?php echo $HTTP_POST_VARS["email"] ?>">
</td><td>
<?php echo $err_email ?>
</td></tr>
<table align="center">
<tr><td valign="top"><div align="center">Wählen Sie eine Bilddatei von ihrem Rechner aus:<br>(Die optimale Bildgröße ist 230x230 px).</div></td></tr>
<tr><td>
<p><b>Wählen Sie ein Bild:</b><br /><input type="file" name="probe" value="<?php if (isset($_POST['probe'])) echo htmlentities(stripslashes($_POST['probe'])); else echo ""; ?>" size="20"/></p>
<br />
<td>
<?php echo $err_datei ?>
</td></tr>
</table>
<br>
<table align="center">
<tr>
<td><input type="hidden" name="sent" value="sent"><input type="submit" name="submit" value="Absenden"> </td>
<td><input type="reset"> </td>
</tr>
</table>
</table><input type="checkbox" name="copy" value="true" /> Kopie an Absender</p>
</div></form>
<?php
if (isset($HTTP_POST_VARS["sent"]) and ($checked) ) {
$msg = "Sie haben eine Bestellung erhalten!\n";
$msg .= "anrede=".$HTTP_POST_VARS["anrede"]."\n";
$msg .= "name=".$HTTP_POST_VARS["name"]."\n";
$msg .= "vorname=".$HTTP_POST_VARS["vorname"]."\n";
$msg .= "email=".$HTTP_POST_VARS["email"]."\n";
mail($mailto,"Danke für die bestellung",
$msg);
echo "Email wurde gesendet an: [email]eclipse_240_hp@gmx.net[/email]<br>\n";
echo nl2br($msg) . "<br>\n";
echo"Bitte klichen Sie <a href=\"http://kontakt.html\">hier</a>um zu den Bankdaten zu gelangen.";
}
?>
</body>
</html>
Kommentar