2016-04-07 7 views
-1

Ich möchte eine E-Mail mit Anhängen senden mit PHP-Skript auf Ubuntu. Ich habe versucht, mutt, mailx, aber sie alle arbeiten am lokalen Terminal, wenn ich sie mit shell_exec() ausführen arr funktioniert nicht. Plz help meSenden Sie E-Mail in PHP-Skript mit Anhang auf Ubuntu-Server

Ps: - Ich bin Anfänger dnt haben viel Wissen über Inhaber/Erlaubnis

+1

teilen Sie einen Code –

+0

Google ist dein Freund, benutze ihn. – Epodax

+0

Meine 2 Cent - 'PHPMailer'. Der Rest liegt an dir. Viel Glück –

Antwort

2

Ich bin sicher, du hast es nicht Google. Es gibt eine Reihe von APIs, die tun, was Sie brauchen.

 <?php 
     //define the receiver of the email 
     $to = '[email protected]'; 
     //define the subject of the email 
     $subject = 'Test email with attachment'; 
     //create a boundary string. It must be unique 
     //so we use the MD5 algorithm to generate a random hash 
     $random_hash = md5(date('r', time())); 
     //define the headers we want passed. Note that they are separated with \r\n 
     $headers = "From: [email protected]\r\nReply-To: [email protected]"; 
     //add boundary string and mime type specification 
     $headers .= "\r\nContent-Type: multipart/mixed; boundary=\"PHP-mixed-".$random_hash."\""; 
     //read the atachment file contents into a string, 
     //encode it with MIME base64, 
     //and split it into smaller chunks 
     $attachment = chunk_split(base64_encode(file_get_contents('attachment.zip'))); 
     //define the body of the message. 
     ob_start(); //Turn on output buffering 
     ?> 
     --PHP-mixed-<?php echo $random_hash; ?> 
     Content-Type: multipart/alternative; boundary="PHP-alt-<?php echo $random_hash; ?>" 

     --PHP-alt-<?php echo $random_hash; ?> 
     Content-Type: text/plain; charset="iso-8859-1" 
     Content-Transfer-Encoding: 7bit 

     Hello World!!! 
     This is simple text email message. 

     --PHP-alt-<?php echo $random_hash; ?> 
     Content-Type: text/html; charset="iso-8859-1" 
     Content-Transfer-Encoding: 7bit 

     <h2>Hello World!</h2> 
     <p>This is something with <b>HTML</b> formatting.</p> 

     --PHP-alt-<?php echo $random_hash; ?>-- 

     --PHP-mixed-<?php echo $random_hash; ?> 
     Content-Type: application/zip; name="attachment.zip" 
     Content-Transfer-Encoding: base64 
     Content-Disposition: attachment 

     <?php echo $attachment; ?> 
     --PHP-mixed-<?php echo $random_hash; ?>-- 

     <?php 
     //copy current buffer contents into $message variable and delete current output buffer 
     $message = ob_get_clean(); 
     //send the email 
     $mail_sent = @mail($to, $subject, $message, $headers); 
     //if the message is sent successfully print "Mail sent". Otherwise print "Mail failed" 
     echo $mail_sent ? "Mail sent" : "Mail failed"; 
     ?>