Anhang einer 2. Datei funktioniert nicht
Steffen
- php
Guten Abend,
ich versuche jetzt schon seit Stunden (ohne php-kenntnisse) in ein vorgegebenes php-skript (mit dem man einen anhang versenden kann) die möglichkeit einen zweiten anhang zu versenden einzubauen. leider kommt jedoch nie eine zweite datei an. alle stellen an denen ich im php-teil veränderungen vorgenommen habe sind markiert siehe unten, kann mir jemand meinen fehler sagen??
<?php
/* EMAIL-ANHANG VERSENDEN (05/2000) *
* ==================================== *
* copyright (c) 2000 by Kristof Hamann *
* published @ http://www.php3-forum.de */
/* Hier wird die Schriftart definiert, die anvielen Stellen verwendet wird */
$FONT = "<FONT SIZE=2 FACE="Verdana, Arial, Helvetica">";
/*
Das Array $contenttypes dient zur identifizierung des MIME-Typs des Anhanges.
Es beinhaltet den MIME-Typ, die Codierung und eine Beschreibung dazu. Die
Codierung ist hierbei sehr wichtig, da binaere Daten im base64-Format versendet
werden muessen (siehe http://www.php3-forum.de/mime_mail.htm)
*/
$contenttypes = array(
"image/gif" => array("encoding"=>"base64","info"=>"")
);
#----------BEGIN Anhang 2 ------------
$contenttypes2 = array(
"image/gif" => array("encoding"=>"base64","info"=>"")
#----------BEGIN Anhang 2 ------------
);
?>
<!-- Quellcode vom PHP-Beispiel: http://www.php3-forum.de/ -->
<HTML>
<HEAD>
<TITLE>eMail-senden</TITLE>
<BODY>
<?php
echo $FONT;
/* pruefe, ob ein Absender und ein Mail-Inhalt eingegeben wurde */
if($von && $mail_content) {
/* Beginne den Mail-Header mit der Definition des Absenders */
$mail_header = "From: $von";
/* Wenn eine Datei als Anhang ausgewaelt wurde... */
if($anhang=="jep" && $dateiname && $datei && $datei != "none") {
/* Lese die temporaere Datei, die der Benutzer hochgeladen hat aus */
$datei_content = fread(fopen($datei,"r"),filesize($datei));
#----------BEGIN Anhang 2 ------------
/* Lese die temporaere Datei, die der Benutzer hochgeladen hat aus */
$datei_content2 = fread(fopen($datei2,"r"),filesize($datei2));
#--------ENDE Anhang 2 --------------
/* Codiere Datei ins BASE64-Format, falls noetig */
if($contenttypes[$anhang_content_type][encoding]=="base64") $datei_content = chunk_split(base64_encode($datei_content));
#--------BEGIN Anhang 2----
if($contenttypes2[$anhang_content_type2][encoding]=="base64") $datei_content2 = chunk_split(base64_encode($datei_content2));
#--------ENDE Anhang 2 --------------
else $datei_content = $datei_content;
/* Generiere einen Boundary */
$boundary = strtoupper(md5(uniqid(time())));
/* Beginne den Mail-Header mit MIME-Mail-Header */
/* (siehe http://www.php3-forum.de/mime_mail.htm) */
$mail_header .= "\nMIME-Version: 1.0";
$mail_header .= "\nContent-Type: multipart/mixed; boundary=$boundary";
$mail_header .= "\n\nThis is a multi-part message in MIME format -- Dies ist eine mehrteilige Nachricht im MIME-Format";
/* Hier faengt der normale Mail-Text an */
$mail_header .= "\n--$boundary";
$mail_header .= "\nContent-Type: $content_type";
$mail_header .= "\nContent-Transfer-Encoding: 8bit";
$mail_header .= "\n\n$mail_content";
/* Hier faengt der Datei-Anhang an */
$mail_header .= "\n--$boundary";
$mail_header .= "\nContent-Type: $anhang_content_type; name="$dateiname"";
#-----BEGIN Anhang 2 ----
$mail_header .= "\n--$boundary";
$mail_header .= "\nContent-Type: $anhang_content_type2; name="$dateiname2"";
/* Lese aus dem Array $contenttypes die Codierung fuer den MIME-Typ des Anhangs aus */
$mail_header .= "\nContent-Transfer-Encoding: ".$contenttypes[$anhang_content_type][encoding];
$mail_header .= "\nContent-Disposition: attachment; filename="$dateiname"";
$mail_header .= "\n\n$datei_content";
#-------BEGIN Anhang 2 -----
# $mail_header .= "\nContent-Transfer-Encoding: ".$contenttypes2[$anhang_content_type2][encoding];
# $mail_header .= "\nContent-Disposition: attachment; filename="$dateiname2"";
# $mail_header .= "\n\n$datei_content2";
#ENDE Anhang 2---
/* Gibt das Ende der eMail aus */
$mail_header .= "\n--$boundary--";
}
/* Sende eMail und gebe Fehler bzw. Bestaetigung aus */
if(@mail($an,$subject,"",$mail_header)) echo "Die eMail mit dem Betreff ".htmlentities($subject)." wurde an ".htmlentities($an)." gesendet.";
else echo "Es ist ein Fehler beim senden der eMail aufgetreten.";
} else {
?>
<TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0>
<FORM METHOD=post ENCTYPE="multipart/form-data" ACTION="<?php echo $PHP_SELF; ?>">
<TR><TD><?php echo $FONT; ?><B></TD><TD><INPUT TYPE=hidden SIZE=40 NAME=an VALUE="asterix21@gmx.de"></TD></TR>
<TR><TD><?php echo $FONT; ?><B>Von: </TD><TD><INPUT TYPE=text SIZE=40 NAME=von VALUE="von mir? oder dir?"></TD></TR>
<TR><TD><?php echo $FONT; ?><B>Betreff: </TD><TD><INPUT TYPE=text SIZE=40 NAME=subject VALUE=""></TD></TR>
<TR><TD><?php echo $FONT; ?><B>Inhaltstyp: </TD><TD><SELECT NAME=content_type hidden><OPTION VALUE="text/plain">Standard: Text<OPTION VALUE="text/html">HTML-Mail</SELECT></TD></TR>
<TR><TD COLSPAN=2><?php echo $FONT; ?><B>Folgender Text wird in der eMail versendet: </TD></TR>
<TR><TD COLSPAN=2><TEXTAREA NAME="mail_content" COLS="60" ROWS="10"></TEXTAREA></TD></TR>
<TR><TD><?php echo $FONT; ?><BR><B><INPUT TYPE=checkbox NAME=anhang VALUE="jep">Anhang: </TD><TD></TD></TR>
<TR><TD><?php echo $FONT; ?>Datei: </TD><TD><INPUT TYPE=file SIZE=20 NAME=datei></TD></TR>
<TR><TD><?php echo $FONT; ?></TD><TD><INPUT TYPE=hidden SIZE=20 NAME=dateiname VALUE="bild1"></TD></TR>
<TR><TD><?php echo $FONT; ?></TD><TD><INPUT TYPE=hidden SIZE=40 NAME=anhang_content_type VALUE="image/gif">
#-----------2. Anhanm BEGIN ---------------
<TR><TD><?php echo $FONT; ?>Datei: </TD><TD><INPUT TYPE=file SIZE=20 NAME=datei2></TD></TR>
<TR><TD><?php echo $FONT; ?></TD><TD><INPUT TYPE=hidden SIZE=20 NAME=dateiname2 VALUE="bild2"></TD></TR>
<TR><TD><?php echo $FONT; ?></TD><TD><INPUT TYPE=hidden SIZE=40 NAME=anhang_content_type2 VALUE="image/gif">
</SELECT></TD></TR>
<TR><TD><?php echo $FONT; ?></TD><TD><?php echo $FONT; ?><INPUT TYPE=submit VALUE="Abschicken"></TD></TR>
</FORM></TABLE>
</FONT>
<?php
}
?>
</BODY>
</HTML>