pls help with this attachement script

PHP programming forum. Ask questions or help people concerning PHP code. Don't understand a function? Need help implementing a class? Don't understand a class? Here is where to ask. Remember to do your homework!

Moderator: General Moderators

Post Reply
juline
Forum Commoner
Posts: 37
Joined: Thu Jul 15, 2004 9:05 am

pls help with this attachement script

Post by juline »

Hi,

i am having this following script which was supposed to send an attachement within the email if there is any. Well, the email is beeing generated and send but i can not bind the attachemt to the email.
Can you please tell me where the mistake is:

Code: Select all

$var1 = $HTTP_GET_VARS['var1'];
    $var2 = $HTTP_GET_VARS['var2'];


    $uploaddir = 'files/uploads'; 
    $filename=$_FILES['file']['name']; 
  
    if (move_uploaded_file($_FILES['file']['tmp_name'], $uploaddir."$filename")) 
    { 
       
   $anhang=fopen("files/uploads/$filename", r); 
   $groesse=filesize("files/uploads/$filename"); 
   $anhangdatei=fread($anhang,$groesse); 
   $anhang_email=chunk_split(base64_encode($anhangdatei)); 
   fclose($anhang); 
    
   $Empfaenger="email@email.de"; 
   $Betreff = "der betreff"; 
   $Nachricht = "<br><br>var1 :  <b>$var1 </b>
                    <br>var2 :  <b>$var2 </b>";

   $Dateiname = "files/uploads/$filename"; 
   $DateinameMail = "$filename"; 
    
   $Header .= "From: ".$name." ".$vorname." <".$email.">"; 
   $Header .= "\n";    
   $Header .= "Cc: ";
   $Header .= "\n";    
   $Header .= "Bcc: ";
 
  
   $bound = strtoupper(md5(uniqid(time()))); 
   $Header .= "\n"; 
   $Header .= "MIME-Version: 1.0"; 
   $Header .= "\n"; 
   $Header .= "Content-Type: multipart/mixed; boundary=$bound"; 
   $Header .= "\n\n"; 
   $Header .= "--$bound"; 
   $Header .= "\n";
   $Header .= "Content-Type: text/html; charset=iso-8859-1";
   $Header .= "\n"; 
   $Header .= "Content-Transfer-Encoding: 8bit"; 
   $Header .= "\n\n"; 
   $Header .= $Nachricht; 
   $Header .= "\n"; 
   $Header .= "--$bound"; 
   $Header .= "\n";
   $Header .= "Content-Type: $file_type"; 
   $Header .= "\n"; 
   $Header .= "Content-Transfer-Encoding: 8bit"; 
   $Header .= "\n\n"; 
   $Header .= "--$bound"; 
   $Header .= "\n"; 
   $Header .= "Content-Type: $file_type; name=$DateinameMail"; 
   $Header .= "\n"; 
   $Header .= "Content-Transfer-Encoding: base64"; 
   $Header .= "\n"; 
   $Header .= "Content-Disposition: attachment; filename=$DateinameMail"; 
   $Header .= "\n\n"; 
   $Header .= chunk_split(base64_encode(fread(fopen($Dateiname, "r"), filesize($Dateiname)))); 
   $Header .= "\n"; 
   $Header .= "--$bound--"; 
 
   mail ($Empfaenger, $Betreff, "", $Header);
   
   } else {

   $Empfaenger="email@email.de"; 
   $Betreff = "der betreff"; 
   $Nachricht = "<br><br>var1 :  <b>$var1 </b>
                    <br>var2 :  <b>$var2 </b>";

   $Header = "From: ".$name." ".$vorname." <".$email.">\r\n";
   $Header .= "Content-type: text/html\r\n";
 
   mail ($Empfaenger, $Betreff, $Nachricht, $Header);
   }
juline
Forum Commoner
Posts: 37
Joined: Thu Jul 15, 2004 9:05 am

Post by juline »

ok folks,

i solved it.
User avatar
Chris Corbyn
Breakbeat Nuttzer
Posts: 13098
Joined: Wed Mar 24, 2004 7:57 am
Location: Melbourne, Australia

Post by Chris Corbyn »

How many mail clients did you test this with? ;)
Post Reply