[Primipassi] Inviare allegati tramite php

Massimiliano Bertei pbi@virgilio.it
Mar 29 Apr 2003 15:04:37 CEST


AIUTOOOOOOO

Uso questo pezzo di codice fatto da me per inviare le e-mail con allegati:

$mess=$m_testo;
$intestazioni = "From: International PBI Newsletters\nReply-To:
info@internationalpbi.it\nX-Mailer: Sismail Web Email
Interface\nMIME-version: 1.0\nContent-type: multipart/mixed;\n
boundary=\"Message-Boundary\"\nContent-transfer-encoding:
7BIT\nX-attachments: $titolo";

$body_top = "--Message-Boundary\n"; 
$body_top .= "Content-type: text/html ; charset=iso-8859-1\n"; 
$body_top .= "Content-transfer-encoding: 7BIT\n"; 
$body_top .= "Content-description: Mail message body\n\n"; 

$msg_body = $body_top . $mess; 



$filez = fopen($f, "r"); 
$contents = fread($filez, filesize($f)); 
$encoded_attach = chunk_split(base64_encode($contents)); 
fclose($filez); 

$msg_body .= "\n\n--Message-Boundary\n"; 
$msg_body .= "Content-type: $tipo_allegato; name=\"$titolo\"\n"; 

//$tipo_allegato=tipo mime del file; $titolo= Nome dell'allegato 

echo ($tipo_allegato);
$msg_body .= "Content-Transfer-Encoding: BASE64\n"; 
$msg_body .= "Content-disposition: attachment;
filename=\"$titolo\"\n\n";

//$titolo=nome dell'allegato 

$msg_body .= "$encoded_attach\n"; 
$msg_body .= "--Message-Boundary--\n"; 


if(!(@mail($html,$m_oggetto,$msg_body, $intestazioni))){ 
print "<H5>Invio della email fallito.</H5>";} 
else
?>
<br>
<br>
<?php
{echo ("E-Mail Spedita!");}

ma funziona solo con file .txt!

se mando ad es. un' immagine jpg non riesce ad prirla lo stesso per i
file zip etc..

i tipi mime che uso sono:

 "application/x-gzip-compressed"     => ".tar.gz, .tgz",
    "application/x-zip-compressed"         => ".zip",
    "application/x-tar"            => ".tar",
    "text/plain"                => ".html, .php, .txt, .inc",
    "image/bmp"                 => ".bmp, .ico",
    "image/gif"                 => ".gif",
    "image/pjpeg"                => ".jpg, .jpeg",
    "image/jpeg"                => ".jpg, .jpeg",
    "application/x-shockwave-flash"     => ".swf",
    "application/msword"            => ".doc",
    "application/vnd.ms-excel"        => ".xls",
    "application/octet-stream"        => ".exe, .fla"


SBAGLIO QUALCOSA???

AIUTOOOOOO





Maggiori informazioni sulla lista primipassi