Un problème d'envoi des adresses Emails via un formulaire WEB avec la posibilité d'envoyer plusieurs fichiers uploadés...
en premier lieux je télécharge les fichiers sur le serveur, et je transmis la liste des fichiers dans une variable POST. mon problème c'est qu'il envoi l'email mais le contenu du mail est codé c comme si c t le fread() du fichier avec le codage chunsk_split, donc je suppose que c'est un prblm de header.
@ini_set('max_execution_time','999999');
@ini_set('SMTP','smtp.serveur.com');
$n_ligne="\n";
$boundary= "--".md5(uniqid(rand()));
///////////////////// AATCTAHHCC ////////////////
function attachm($nom_fichier,$boundarys)
{
$n_ligne="\n";
//extension er type
$exts=explode(".",$nom_fichier);
$extns=strtolower($exts[(sizeof($exts)-1)]);
if($extns=="pdf")
$extns="application/pdf";
else if($extns=="doc")
$extns="application/msword";
else
$extns="image/jpg";
////
$fichier="mailing/files_mail/$nom_fichier";
$handle=fopen($fichier, 'rb');
$contenu_f=fread($handle, filesize($fichier));
$contenu_f=chunk_split(base64_encode($contenu_f));
fclose($handle);
$reponse=$boundrys;
$reponse.="Content-Type: $extns; name=\"".$nom_fichier."\"$n_ligne";
$reponse.="Content-Transfer-Encoding: base64 $n_ligne";
$reponse.="Content-Disposition: attachment; filename=\"".$fichier."\"".$n_ligne.$n_ligne;
$reponse.="$contenu_f".$n_ligne.$n_ligne;
$reponse.=$boundrys."--".$n_ligne.$n_ligne;
return $reponse;
}
//////////////////////////////
//////////////////////////// TABLEAU D'ENVOIE ///////////////
switch($_POST["groupe"])
{
case 'tous':$i=0;
$mails_rq=mysql_query("SELECT email_annuaire FROM annuaire_jd");
while($mail_tab=mysql_fetch_array($mails_rq))
{
if($mail_tab[0]!="")
{
$mails[$i]=$mail_tab[0];
$i++;
}
}
unset($mails_rq,$mail_tab);
$mails_rq=mysql_query("SELECT email FROM emails");
while($mail_tab=mysql_fetch_array($mails_rq))
{
if($mail_tab[0]!="")
{
$mails[$i]=$mail_tab[0];
$i++;
}
}
unset($mails_rq,$mail_tab);
$mails_rq=mysql_query("SELECT email FROM users");
while($mail_tab=mysql_fetch_array($mails_rq))
{
if($mail_tab[0]!="")
{
$mails[$i]=$mail_tab[0];
$i++;
}
}
unset($mail_rq,$mail_tab);
$mails_rq=mysql_query("SELECT mail_m FROM grp_mail_m");
while($mail_tab=mysql_fetch_array($mails_rq))
{
if($mail_tab[0]!="")
{
$mails[$i]=$mail_tab[0];
$i++;
}
}
break;
case 'jd': $i=0;
$mails_rq=mysql_query("SELECT email_annuaire FROM annuaire_jd");
while($mail_tab=mysql_fetch_array($mails_rq))
{
if($mail_tab[0]!="")
{
$mails[$i]=$mail_tab[0];
$i++;
}
}
break;
default: unset($mails_rq,$mail_tab);$i=0;
$mails_rq=mysql_query("SELECT mail_m FROM mail_mailing WHERE grp_mail_m='".$_POST["groupe"]."'");
while($mail_tab=mysql_fetch_array($mails_rq))
{
if($mail_tab[0]!="")
{
$mails[$i]=$mail_tab[0];
$i++;
}
}
break;
}
$header="MIME-Version: 1.0".$n_ligne.$n_ligne;
$header.="Content-Type: multipart/related; boundary=\"".$boundary."\"".$n_ligne.$n_ligne;
$header.="From: Webmaster CJD<[email protected]>$n_ligne";
//$header.="Content-Type: multipart/mixed; ".$n_lignes.$n_ligne;
//$header.="Content-Type: text/html; charset=\"iso-8859-1\"".$n_ligne;
$message=$boundary.$n_ligne.$n_ligne;
$message.="Content-Type: text/html; charset=\"iso-8859-1\"".$n_ligne;
$message.="Content-Transfer-Encoding: 8bit".$n_ligne.$n_ligne;*/
$message.=$_POST["text"].$n_ligne.$n_ligne;
if(!empty($_POST["attach_files"]))
{
$files=explode("|",$_POST["attach_files"]);
foreach($files as $fich_up)
if($fich_up!="")
{
$message.=attachm($fich_up,$boundary);
}
}else{
$message.=attachm("no.jpg",$boundary);
}
$message.="--".$boundary."--".$n_ligne.$n_ligne;*/
//echo $message;
$nbr_env=0;
$nbr_n_env=0;
//echo $header;
foreach($mails as $adre_mail)
{
if(mail($adre_mail,"Centre des Jeunes Dirigeants",$message,$header))
{
$nbr_env++;
}else
$nbr_n_env++;
$adr++;
}