$value) { //echo $_POST[$key] = addslashes($value); $_POST[$key] = addslashes($value); } } // texte einbinden include("messages.php"); //begin captcha-abschnitt if (isset($_POST[email]) AND !isset($_POST[sicherheitscode])) die($MSG['head'].$MSG['no_captcha'].$MSG['back_to']); session_start(); if(isset($_SESSION['captcha_spam']) AND $_POST["sicherheitscode"] == $_SESSION['captcha_spam']) { unset($_SESSION['captcha_spam']); $ip = $_SERVER['REMOTE_ADDR']; $datum = date("d.m.Y"); $zeit = date("H:i"); #ge?ndert, damit auch f?r php5 geeignet #$https = $HTTP_POST_VARS; $https = $_POST; $email = $_POST['email']; $sender = $_POST['sender']; $betreff = htmlspecialchars(stripslashes($_POST['betreff'])); $url = $_POST['url']; $rec2 = $_POST["email2"]; $copy = $_POST["copy"]; $copyto = $_POST["SenderMail"]; $strFrom = $Ihre_EMail_Adresse; $typ = $_POST["typ_sender"]; $reply_to = $Ihre_EMail_Adresse; if (isset($_POST['mailformat']) AND $_POST['mailformat'] == "html"){ $text = "$betreff"; $text .= "Sie haben eine Mail am $datum um $zeit erhalten!

"; $text2 = $text."Sie haben ein Formular am $datum um $zeit ausgef?llt!
Dabei wurden folgende Angaben ?bermittelt:

"; } else { $text="Sie haben eine Mail am $datum um $zeit erhalten!\n ___________________________________________________ \n"; $text2="Sie haben ein Formular am $datum um $zeit ausgef?llt!\n Dabei wurden folgende Angaben ?bermittelt:\n ___________________________________________________ \n"; } $hidden_fields = array('next', 'url','copy','email','typ_sender','sender','mailformat'); if (isset($_POST['mailformat']) AND $_POST['mailformat'] == "html") { $text .= ""; $text2 .= "
"; foreach ($https as $key => $value) { if (! in_array($key, $hidden_fields)) $text = $text."\n\n"; $text2 = $text2."\n\n"; } $text .= ""; $text2 .= ""; $text .= ""; $text .= ""; $text .= ""; $text .= ""; $text .= ""; $text .= "
".$key." :".htmlspecialchars(stripslashes($value))."
".$key." :".htmlspecialchars(stripslashes($value))."
  
  
Datum :$datum
Uhrzeit :$zeit
IP :$ip
  
".$_SERVER['HTTP_USER_AGENT']."
"; $text2 .= ""; } else { foreach ($https as $key => $value) { if (!in_array($key, $hidden_fields)) $text = $text."".$key." : ".stripslashes($value)."\n\n"; $text2 = $text2."".$key." : ".stripslashes($value)."\n\n"; } $text = $text."\n __________________________ \nDatum:".$datum."\nUhrzeit:".$zeit." Uhr\nIP:".$ip."\n".$_SERVER['HTTP_USER_AGENT']; } #echo $text; if(empty($betreff)) {$betreff="Formular?bermittlung";} if(empty($email)) {$email= $strFrom;} if(empty($url)) {$url='http://www.principality-of-sealand.ch';} if (empty($typ)) {$reply_to=$sender;} if ($typ ==1) {$reply_to = $_POST["SenderMail"];} if ($typ ==0) { if (empty($copyto)) $reply_to = $_POST["Sender"]; else $reply_to = $_POST["SenderMail"];} # Maximale Gr??e des Attachments in Bytes: # k?nnte man auch weglassen $max_attach_size = 1200000; $filesize = false; //schreiben der logdatei #$datei = fopen("log.txt", "a+"); $datei = fopen(date("m")."_".date("Y").".txt", "a+"); fwrite($datei, $datum.' - '.$zeit.' - '.$email. "\n"); fclose($datei); // Dateien z?hlen $count = count($_FILES['upload']['name']); // Boundary festlegen: $boundary = md5(uniqid(rand())); // Anfang des Mail-Headers // (musste ausgelagert werden) if ($count == 0) { $header = "From: FormMailer<".$strFrom.">\r\n"; $header .= "X-Sender-IP: $ip\n"; if (isset($_POST['mailformat']) AND $_POST['mailformat'] == "html") { $header .= "Content-Type: text/html\n"; $header .= "\nContent-Transfer-Encoding: 8bit"; } else $header .= "Content-Type: text/plain\n"; $header .= "Reply-To: ".$reply_to."\r\n"; } else { $header = "From: FormMailer<".$strFrom.">\r\n"; $header .= "X-Sender-IP: ".$ip."\n"; $header .= "MIME-Version: 1.0\n"; $header .= "Content-Type: multipart/mixed; boundary=\"".$boundary."\"\n"; $header .= "This is a multi-part message in MIME format.\n"; // Mail-Text: $header .= "--".$boundary; if (isset($_POST['mailformat']) AND $_POST['mailformat'] == "html") $header .= "\nContent-Type: text/html\n"; else $header .= "\nContent-Type: text/plain\n"; $header .= "\n\n".$text."\n\n"; $text = ""; } // schleife f?r alle dateien // f?gt f?r jede datei den entsprechenden header eintrag hinzu // jede datei wird auch wieder auf die gr?sse ?berpr?ft for ($i = 0;$i < $count;$i++) { //print_r($_FILES['upload']); if ($_FILES['upload']['name'][$i] == "t") { $int_filesize = $_FILES['upload']['size']; $str_filename = $_FILES['upload']['name']; $tmp_filename = $_FILES['upload']['tmp_name']; $filetype = $_FILES['upload']['type']; } else { $int_filesize = $_FILES['upload']['size'][$i]; $str_filename = $_FILES['upload']['name'][$i]; $tmp_filename = $_FILES['upload']['tmp_name'][$i]; $filetype = $_FILES['upload']['type'][$i]; } if ($int_filesize > $max_attach_size) { $filesize = false; echo "

Meldung vom FormMailer

"; echo "Ihr Attachment ".$str_filename." ist zu gro? (".number_format($int_filesize/1000,0,",","")." KB) - Maximalgr??e: ".number_format($max_attach_size/1000,0,",","")." KB
"; echo "
Zur?ck zum Formular"; } else {// Wenn Attachment vorhanden und gr?sse ok, dann MIME-Mail erstellen: $filesize = true; if ($tmp_filename && $filesize == true) { // Datei einlesen und codieren: $datei_content = fread(fopen($tmp_filename,"r"),filesize($tmp_filename)); $datei_content = chunk_split(base64_encode($datei_content),76,"\n"); // Attachment: $header .= "\n--".$boundary; $header .= "\nContent-Type: ".$filetype."; name=\"".$str_filename."\""; $header .= "\nContent-Transfer-Encoding: base64"; $header .= "\nContent-Disposition: attachment; filename=\"".$str_filename."\""; $header .= "\n\n".$datei_content; // Ende: if ($i == $count-1) $header .= "\n--".$boundary."--"; } } } // Checken der bad words $bad_words = file_get_contents("bad_words.txt"); $bad_words = explode("\r\n",$bad_words); foreach ($bad_words AS $value) { if (strpos($text,$value) !== FALSE) die($MSG['head'].$MSG['bad_word'].$MSG['back_to']); if (strpos($header,$value) !== FALSE) die($MSG['head'].$MSG['bad_word'].$MSG['back_to']); } mail($email,$betreff,$text,$header) or die ("Fehler beim ?bermitteln!"); //hier werden dann noch die kopien abgefr?hst?ckt if ($rec2 != "") mail($rec2,$betreff,$text,$header); if ($copy != "") mail($copyto,$betreff,$text2,$header); header("Location: ".$url); } else { echo($MSG['head'].$MSG['captcha_wrong'].$MSG['back_to']); } ?>