[PHP] Attachment bij mail(); verkeerd gerecode?

Pagina: 1
Acties:
  • 604 views sinds 30-01-2008
  • Reageer

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Bij het versturen van een email met attachment met behulp van PHP loop ik tegen een probleem aan. Het gaat namelijk goed als de bijlage, die via een formulier wordt geupload, een gewoon tekstbestand is, dan is dit gewoon te openen bij het lezen van de mail. Is het echter een ander soort bestand (bijv word/pdf/gif) dan resulteert dit wel in een bestand dat even groot is als het originele bestand, maar de inhoud lijkt wel verkeerd gerecode of iets dergelijks.

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
if (is_uploaded_file($_FILES['businessplan']['tmp_name'])) {
    $file = $_FILES['businessplan']['tmp_name'];
    $type = $_FILES['businessplan']['type'];

    $fp = fopen($file,"rb");
    $fcontent = fread($fp ,filesize($file));
    fclose($fp);
    $content = chunk_split(base64_encode($fcontent));
    
    $sep = strtoupper(md5(uniqid(time())));
    $name = $_FILES['businessplan']['name'];
}

$header = "From: Van <van@dit_emailadres.nl>\r\n";
$header .= "MIME-Version: 1.0\r\n";
$header .= "Content-Type: multipart/mixed; boundary=$sep\r\n";

$body = "--$sep\r\n";
$body .= "Content-Type: text/plain\r\n";
$body .= "Content-Transfer-Encoding: 8bit\r\n\r\n";
$body .= "$msgtext\r\n";
$body .= "--$sep\r\n";
$body .= "Content-Type: application/octet-stream; name=\"$name\"\r\n";
$body .= "Content-Transfer-Encoding: base64\r\n";
$body .= "Content-Disposition: attachment; filename=\"$name\"\r\n";
$body .= "$content\r\n";
$body .= "--$sep--";

mail("naar@dit_emailadres.nl", "Mailform", $body, $header);

Acties:
  • 0 Henk 'm!

  • H004
  • Registratie: Maart 2006
  • Laatst online: 28-05 19:55
Gebruik gewoon de phpmailer-class, ben je in een keer van al dat soort problemen af.

Acties:
  • 0 Henk 'm!

  • SchizoDuckie
  • Registratie: April 2001
  • Laatst online: 18-02 23:12

SchizoDuckie

Kwaak

Mee eens. niet zelf het wiel uit gaan vinden bij e-mail, dan krijg je allemaal wazigheid over je heen. PHPMailer kan dat veel beter, sneller en simpeler.

Stop uploading passwords to Github!


Acties:
  • 0 Henk 'm!

  • _Gekkie_
  • Registratie: Oktober 2000
  • Laatst online: 24-06 20:21

_Gekkie_

And the cow said: Helloooooow?

om ook maar even een duit in het zakje te doen:
- html mime mail (van Richard Heyes)
- swiftmailer (erg goed!)

[ Voor 32% gewijzigd door _Gekkie_ op 17-01-2008 15:10 ]

Gekkie is a proud member of TheBenny!