Aber jetzt:
Hallo erstmal!
(hoffentlich die letzte Runde)
Also: Hab alle Argumente mit eingebaut, die Du mir genannt hattest. Attachment wird versendet, es kommt aber immer noch nur eine Datei namens "php2PqQ7h.dat" (bzw. zwei oder mehr) mit an.
B I T T E B I T T E nochmals um deine Hilfe:
<?
if ($_POST["action"]=="versenden")
{
$from = $_POST["absender"];
$recipient = $_POST["empfaenger"];
$subject= $_POST["betreff"];
$boundary = strtoupper(md5(uniqid(time())));
$header = "From: $from\n"; //kommt von Formular
$header .= "MIME-Version: 1.0";
$header .= "\nContent-Type: multipart/mixed; boundary="$boundary"";
nach den zwei Zeilenschaltungen beginnt der Mailbody
$header .= "\n\nThis is a multi-part message in MIME format -- Dies ist eine mehrteilige Nachricht im MIME-Format";
nach dieser Boundary beginnt der erste Mime-Teil
$header .= "\n--$boundary";
$header .= "\nContent-Type: text/plain";
$header .= "\nContent-Transfer-Encoding: 8bit";
20 nach wieder zwei Zeilenschaltungen beginnt der Body dieses
Abschnitts. Und das ist der Plain-Text.
$header .= "\n\n$text";
hier wird das Attachment vorbereitet.
/*###### Ohne Array #########################
$fh = fopen($file,"r");
if ($fh)
{
$file_content = fread($fh,filesize($filename));
fclose($fh);
$file_content = chunk_split(base64_encode($file_content),76,"\n");
$header .= "\n--$boundary";
$header .= "\nContent-Type: application/octetstream;"."name="".basename($filename).""";
$header .= "\nContent-Transfer-Encoding: base64";
$header .= "\nContent-Disposition: attachment;"."filename="".basename($filename).""";
$header .= "\n\n$file_content\n";
}
#####################*/
###Jetzt mit array####################################
if (is_array($attach))
{
foreach($attach as $filename)
{
$fh = @fopen($filename,"r"); ## da war noch ein Fehler (file->filename)
if ($fh)
{
$file_content = fread($fh,filesize($filename));
fclose($fh);
$file_content = chunk_split(base64_encode($file_content),76,"\n");
$header .= "\n\n--$boundary"; ## hier die Leerzeilen
$header .= "\nContent-Type: application/octetstream;"."name="".basename($filename).""";
$header .= "\nContent-Transfer-Encoding: base64";
$header .= "\nContent-Disposition: attachment;"."filename="".basename($filename).""";
$header .= "\n\n$file_content\n";
}
else
{
$err[] = "Attachment File ".$filename." ließ sich nicht öffnen";
}
} ## end foreach()
} ## endif isarray
else
{
$err[] = "Attachment fehlt.";
}
###Ende Vorbereitung
$header .= "\n--$boundary--";
$ok = mail($recipient,$subject,"",$header);
if ($ok=="true"){print "Nachricht wurde versandt...<br><br>";}
else{print "Konnte Nachricht nicht versenden...<br><br>";}
echo "<pre>";
echo htmlentities($header);
echo "</pre>";
print $file."<br><br>";
} //Ende send==True
?>
<html>
<body>
<form action="index.php" method="post" enctype="multipart/form-data" target="_blank">
<form action="index.php" method="post" target="_blank">
Empfänger: <input type="text" name="empfaenger" value=""><br>
Absender: <input type="text" name="absender" value=""><br>
Text: <textarea name="text" rows="10" cols="50" WRAP="VIRTUAL"></TEXTAREA><br>
Attachment: <input type="file" name="attach[]"><br>
Attachment: <input type="file" name="attach[]"><br>
<input type="submit" value="versenden" name="action">
</body>
</html>
Vielen Dank, Tom1tk