ghoppe Geschrieben 3. Mai 2005 Teilen Geschrieben 3. Mai 2005 Hallo zusammen , ich such ein php Script mit dem ich auf der Internetseite einen Upload anbieten kann und dieser Upload per Mail an mich verschickt wird. MFG Günni Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
geloescht_JesterDay Geschrieben 4. Mai 2005 Teilen Geschrieben 4. Mai 2005 Also ich bastel jetzt mal ein Skript aus teilen alter Skripte von mir zusammen (es ist nicht getestet, also das was ich jetzt tippe, aber sollte reichen): HTML-Datei für Upload: ... <form name="upload" action="upandsend.php" method="post" enctype="multipart/form-data"> File: <input type="file" name="datei" /> </form> ... [/php] PHP-Datei für Empfang (upandsend.php): [php] ... if (is_uploaded_file($_FILES['datei']['tmp_name'])) { //*** Content-ID: $CID = md5(uniqid (rand(), 1)); // Mail-Header $mime_boundary = "" . md5(uniqid(mt_rand(), 1)); $Header.= "From:$MailFrom<$MailFromAdr>\r\n"; $Header.= "X-Mailer: PHP/" . phpversion(). "\r\n"; $Header.= "MIME-Version: 1.0\r\n"; $Header.= "Content-Type: multipart/related; boundary=\"".$mime_boundary."\"; type=\"text/plain\"\r\n"; // Mail-Body $MailBody = "--".$mime_boundary."\r\n"; $MailBody.= "Content-Type: Text/plain\r\n"; $MailBody.= "Content-Transfer-Encoding: quoted-printable\r\n\r\n"; $MailBody.= "Neue hochgeladene Datei empfangen"; $MailBody.= "\r\n\r\n"; $MailBody.= "--".$mime_boundary."\r\n"; // Datei einlesen und kodieren $fp = fopen ($_FILES['datei']['tmp_name'], "rb"); $str = fread ($fp, filesize ($_FILES['datei']['tmp_name'])); $data = chunk_split(base64_encode($str)); // Datei an Mail anhängen $content.= "Content-Type: application/octet-stream\r\n"; $content.= "Content-ID: <$CID".$_FILES['datei']['name'].">\r\n"; $content.= "Content-Transfer-Encoding: base64\r\n"; $content.= "Content-Disposition: attachement;". " filename=\"".$_FILES['datei']['name']."\"\r\n\r\n"; $content.= $data; // Body und anhang zusammenfügen $MailBody.= $content; $MailBody.= "--".$mime_boundary."--\r\n"; // absenden mail($MailTo, $MailToSubject, $MailBody, $Header); echo "<h2> Datei empfangen und abgeschickt</h2>"; } else { echo "<h1>Fehler!</h1>"; } Die Variablen $MailTo und $MailToSubject musst du ersetzen. Ausserdem benutze ich \r\n als Zeilenumbruch (war für ein Novell-System). Damit es auf einem Linux-System lief musste das angepasst werden (ich glaub es war nur \n), musst du probieren. Ansonsten sollte das so hinhauen. http://www.faqs.org/rfcs/rfc2387.html Da findest du Infos über Mails mit Anhängen (Ich glaub das war die, die ich damals genutz hat u.a.) Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.