#1 17. März 2015 Hallo, ich habe ein Kontaktformular wo der Kunde die Möglichkeit haben soll, eine Datei mit hochzuladen. Jetz meine Frage, ist es sinvoller den Link zur Datei einfach mit zu senden, oder die ganze Datei. Und wie setze ich das alles am besten um, ich habe schon einige Scripte gefunden, aber so richtig blicke ich da nicht durch, machne meinten ich muss erst das "Pear Script" auf meinen Server installieren, andere sprechen gar nicht von dem Pear Script. Als Beispiel Code habe ich z.B. folgendes gefunden. Code: <?php function mail_att($to,$subject,$message,$anhang) { $absender = "Mein Name"; $absender_mail = "ich@domain"; $reply = "antwort@adresse"; $mime_boundary = "-----=" . md5(uniqid(mt_rand(), 1)); $header ="From:".$absender."<".$absender_mail.">\n"; $header .= "Reply-To: ".$reply."\n"; $header.= "MIME-Version: 1.0\r\n"; $header.= "Content-Type: multipart/mixed;\r\n"; $header.= " boundary=\"".$mime_boundary."\"\r\n"; $content = "This is a multi-part message in MIME format.\r\n\r\n"; $content.= "--".$mime_boundary."\r\n"; $content.= "Content-Type: text/html charset=\"iso-8859-1\"\r\n"; $content.= "Content-Transfer-Encoding: 8bit\r\n\r\n"; $content.= $message."\r\n"; //$anhang ist ein Mehrdimensionals Array //$anhang enthält mehrere Dateien if(is_array($anhang) AND is_array(current($anhang))) { foreach($anhang AS $dat) { $data = chunk_split(base64_encode($dat['data'])); $content.= "--".$mime_boundary."\r\n"; $content.= "Content-Disposition: attachment;\r\n"; $content.= "\tfilename=\"".$dat['name']."\";\r\n"; $content.= "Content-Length: .".$dat['size'].";\r\n"; $content.= "Content-Type: ".$dat['type']."; name=\"".$dat['name']."\"\r\n"; $content.= "Content-Transfer-Encoding: base64\r\n\r\n"; $content.= $data."\r\n"; } $content .= "--".$mime_boundary."--"; } else //Nur 1 Datei als Anhang { $data = chunk_split(base64_encode($anhang['data'])); $content.= "--".$mime_boundary."\r\n"; $content.= "Content-Disposition: attachment;\r\n"; $content.= "\tfilename=\"".$anhang['name']."\";\r\n"; $content.= "Content-Length: .".$dat['size'].";\r\n"; $content.= "Content-Type: ".$anhang['type']."; name=\"".$anhang['name']."\"\r\n"; $content.= "Content-Transfer-Encoding: base64\r\n\r\n"; $content.= $data."\r\n"; } if(@mail($to, $subject, $content, $header)) return true; else return false; } ?> Mein aktueller PHP Teil sieht derzeit so aus Code: <?php if($_POST["send"]) { $email = $_POST["email"]; $name = $_POST["name"]; $vname = $_POST["vname"]; $tele = $_POST["telefon"]; $nachricht = $_POST["message"]; if ($_POST["1"] == "checkbox1") { $material = "Preisklasse 1 (z.B. Buche, Eiche, Ahorn)"; } if ($_POST["1"] == "checkbox2") { $material = "Preisklasse 2 (z.B. Nussbaum, Rüster)"; } if ($_POST["2"] == "checkbox3") { $stoff = "Preisklasse 1 (z.B. Flachgewebe)"; } if ($_POST["2"] == "checkbox4") { $stoff = "Preisklasse 2 (z.B. Mohairstoffe, Plüsch)"; } if ($_POST["2"] == "checkbox5") { $stoff = "Preisklasse 3 (z.B. Leder)"; } if ($_POST["3"] == "checkbox6") { $fuss = "Preisklasse 1 (z.B. Kunststoff)"; } if ($_POST["3"] == "checkbox7") { $fuss = "Preisklasse 2 (z.B. Holz)"; } if ($_POST["3"] == "checkbox8") { $fuss = "Preisklasse 3 (z.B. Metall)"; } $timestamp = time(); $datum = date("d.m.Y",$timestamp); $uhrzeit = date("H:i",$timestamp); $mail_empfaenger="info@sofaunikat.de"; $mail_absender=$email; $betreff="Sofaunikat - Anfrageformular"; $text= " Name: $name Vorname: $vname Telefon: $tele E-mail: $email Material: $material Stoffart: $stoff Befußung: $fuss Nachricht: $nachricht geschirben am : $datum, um $uhrzeit Uhr "; //DATEI UPLOAD mail($mail_empfaenger, $betreff, $text, "From:$mail_absender"); } ?> und hier der Link zu Seite : Sofaunikat - Anfrageformular + Multi-Zitat Zitieren
#2 17. März 2015 AW: PHP: Formular Datei-Anhang per Email senden warum nutzt du nicht die php mailer klasse? Worx International Inc. da kannste auch easy die datei direkt an die Mail hängen + Multi-Zitat Zitieren