file_get_contents(), envoie mail() avec pièce jointe php

Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics

akara
WRInaute discret
WRInaute discret
 
Messages: 57
Inscription: Jeu Juin 14, 2007 14:51

file_get_contents(), envoie mail() avec pièce jointe php

Message le Jeu Juin 21, 2007 10:34

Bonjour,
j'ai fait un formulaire avec la possibilité d'envoyer au maximum 3 fichiers (images)....
Pour le type MIME je gère comme ceci :
Code: Tout sélectionner
$nombre = sizeof($tab_fichier);
for ($i = 0; $i <$nombre; $i++)
{
   if($tab_fichier[$i]!=""){
   $path_parts = pathinfo($tab_fichier[$i]);
   $message .= 'Content-Type: image/'.$path_parts['extension'].'; name="'.$path_parts['basename'].'"'."\n";
   $message .= 'Content-Transfer-Encoding: base64'."\n";
   $message .= 'Content-Disposition:attachment; filename="'.$path_parts['basename'].'"'."\n\n";
   $message .= chunk_split(base64_encode(file_get_contents($path_parts['basename'])))."\n";
   }
}

$tabfichier[] contient les noms des fichiers.
Mais lors de l'envoie du formulaire, je reçois bien le mail mais il n'y a pas de pièces jointes et j'ai :
Content-Type: image/gif; name="icon_bug.gif"
Content-Transfer-Encoding: base64
Content-Disposition:attachment; filename="icon_bug.gif"

Content-Type: image/gif; name="headbang.gif"
Content-Transfer-Encoding: base64
Content-Disposition:attachment; filename="headbang.gif"

au format texte dans le corps du mail.
Puis j'ai aussi l'erreur sur file_get_contents($path_parts['basename']) :
Warning: file_get_contents(icon_bug.gif): failed to open stream

Je voudrais savoir pourquoi je ne reçois les Content-xxxx du MIME en tant que texte dans le mail..


RomsIW
WRInaute accro
WRInaute accro
 
Messages: 1062
Inscription: Mar Mai 25, 2004 18:35

Message le Jeu Juin 21, 2007 12:05

tu devrais utiliser une classe comme phpMailer qui te permettrait de faire ça parfaitement en 4 lignes.. le tout étant d'encoder l'image et de l'inclure dans le message..

akara
WRInaute discret
WRInaute discret
 
Messages: 57
Inscription: Jeu Juin 14, 2007 14:51

Message le Jeu Juin 21, 2007 12:18

Merci RomsIW , je viens de voir phpMailer,mais j'ai pas tout compris !!
je ne vois pas comment utiliser une classe


RomsIW
WRInaute accro
WRInaute accro
 
Messages: 1062
Inscription: Mar Mai 25, 2004 18:35

Message le Jeu Juin 21, 2007 12:44

là dedans tu as des exemples :

http://phpmailer.sourceforge.net/tutorial.html

c'est vraiment très simple tu verras, il suffit de renseigner diverses variables et d'appeler le send pour envoyer


Formation recommandée sur ce thème :

Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités