2017-10-24 2 views
0

Wie ist es möglich, eine Datei, in einer MySQL-Datenbank gespeichert, per Mail zu senden. Es funktionierte, als ich versuchte, es nach dem Herunterladen zu '../uploads/' zu senden.PHP Datei von db über Mail senden

if ($attachment != '') { 
     $crlf = "\n"; 
     $mime = new Mail_mime($crlf); 
     $mime->setTXTBody($message); 
     $mime->addAttachment('../uploads/file.xls'); 
     $body = $mime->get(); 
     $headers = $mime->headers($headers); 
    } else { 
     $body = $message; 
    } 

    $smtp = Mail::factory('smtp', array ('host' => $host)); 
    $mail = $smtp->send($recipient, $headers, $body); 

Wie kann ich diese

$mime->addAttachment('../uploads/file.xls'); 

die Datei aus dem db lesen?

Ich wäre dankbar für Hinweise.

Grüße

Alex

+1

1) aus der Datenbank der Inhalt der Datei lesen. 2) Schreiben Sie in eine temporäre Datei. 3) Hängen Sie diese Datei an. 4) E-Mail senden. 5) Löschen Sie die temporäre Datei. – Phylogenesis

Antwort

0

Nach dem documentation for the Mail_Mime PEAR package Lesen, arbeiten sollte folgendes auch:

$mime->addAttachment(
    $fileContent, 
    'application/octet-stream', 
    $suggestedFileName, 
    false      # First parameter is content, not a filename. 
); 
+0

Danke Phylogenesis, ich habe es schon so versucht, aber ich habe den falschen Parameter nicht hinzugefügt. Jetzt funktioniert es wie erwartet. –

+0

Wenn dies Ihnen geholfen hat, akzeptieren Sie diese Antwort, indem Sie auf das Kontrollkästchen auf der linken Seite klicken. – Phylogenesis