IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Mail] Inclure un fichier dans le corps d'un mail


Sujet :

Langage PHP

  1. #1
    Membre confirmé Avatar de guigo
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 612
    Points : 576
    Points
    576
    Par défaut [Mail] Inclure un fichier dans le corps d'un mail
    rebonjour,

    Je n'arrive pas a faire exactemant ce que je veux pour l'envoie de mail avec la fonction mail() de php.
    Mon probleme est que je veux inclure dans le body du mail une page php creer dynamiquement. J'ai essaye pas mal de truc don la fonction file_get_contents, le pb est que le fichier est stocke dans la variable tel quelle, le php n'est pas interprete!!!
    Voici mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
     
     
    $expediteur = ""; 
     
    // Le destinataire du mail
    $destinataire = "";   
     
     // objet du mail
    $objet = "";
     
    // le contenue du message
    //mail_client.php est le fichier qui n'ai pas interprete
    $message = file_get_contents("mail_client.php",false); 
     
    // pour pouvoir mettre du html
    $mail_html  = 'MIME-Version: 1.0' . "\r\n";
    $mail_html .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
    $mail_html .= "From:$expediteur" . "\r\n";
     
    // on envoit le mail
    mail($destinataire, $objet, $message, $mail_html);



    Est ce que quelqu'un aurai une astuce

    Merci bcp
    guigo

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 278
    Points : 1 639
    Points
    1 639
    Par défaut
    Il faut que tu fasses un include du fichier mail_client.php.
    Par exemple, dans mail_client.php, tu affectes le contenu du mail à une variable. Tu inclus le fichier, puis tu récupères le contenu de cette variable pour l'envoyer avec mail().

  3. #3
    Membre confirmé Avatar de guigo
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 612
    Points : 576
    Points
    576
    Par défaut toujours pas reussi
    bonjour,
    j'avoue qu'un peu d'aide pourrais me soulager...

    Voila je veux inclure se fichier (mail.client.php) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
     
     
     
    				<img  src="./bouton/banniere.jpg" alt="" border=0 />
    				<br/>
     
    				La sociéte  vous remercie de lui avoir fait confiance.
     
     
    				voici la facture :<br/>
     
    				 <TABLE  cellpadding="10" border="2" >
     
    		<TR>
    			<TD align="center" ><strong> Produit</strong> </td>
     
    			<TD align="center"><strong> Quantité  </strong></td>
     
    			<TD align="center"><strong> Prix Unitaire </strong></td>
     
    			<TD align="center"><strong>	  Total		  </strong></td>
    		</TR>
     
     
    <?php
    //passer le numéro de cookie dans un champs de factureTps
     include ("connexion.php");
     
    	$Log=$_SESSION['login'];
     
    	$req = "SELECT * ".
    	"FROM tpsfacture WHERE LogSession='".$Log."' "; 
    	$ret = mysql_query ($req) or die (mysql_error ());
     
    	//somme totale : somme de tous les articles confondus
    	//poid de tous les articles confondus
    	$SommeT=0;
    	$PoidT=0.0;
     
    	while ( $col = mysql_fetch_row ($ret))	
    	{
    	//somme partielle : nb de produit*prix du produit
    	//poid partiel : nb de produit*poid unitaire
    	$SommeP=0;
    	$SommeP = ($col[2]*$col[3]);
    	$PoidP =0.0;
     
     
    	$requete = "SELECT NomP, Poi ".
    	"FROM fiche WHERE Fiche_id= '".$col[1]."'";
    	$resultat = mysql_query ($requete) or die (mysql_error ());
    	$colonne = mysql_fetch_row($resultat);
    	$PoidP=$colonne[1]*$col[3];
    ?>
    			<TR>
    				<TD align="center" > <?  echo  $colonne[0]; ?>	</TD>
     
    				<TD align="center"> <?  echo  $col[2]; ?>	</TD>
     
    				<TD align="center">	<?  echo  $col[3]; ?>	</TD>
     
    				<TD align="center">	<?  echo  $SommeP; ?>	</TD>
     
    			</TR>
     
    <?
    $PoidT=$PoidP+$PoidT; 
    $SommeT=$SommeP+$SommeT;
    }
    ?>	
    	<TR>
    		<td colspan="3" align="center"> Poid total du panier <? echo $PoidT; ?></td>
    		<td align="center"> 
    		<? 
     
    			$req = "SELECT Tarif FROM poid WHERE(PoidMin<'".$PoidT."' and PoidMax>'".$PoidT."')"; 
    	$ret = mysql_query ($req) or die (mysql_error ());
     
    	$colP = mysql_fetch_row ($ret);
    		echo ($colP[0]);
     
    		?>
    		</td>
    	</TR>	
    	<TR>
    		<td colspan="3" align="center"> Somme totale du panier </td>
    		<td align="center"> <? echo $SommeT; ?> </td>
    	</TR>	
    	</TABLE>

    bon peut importe ce code. Ce qui est important c que se fichier (une fois interpreté) puisse etre inclu dans le body d'un mail.
    Pour cela je fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
     
    <?php
     
    		$message = include("mail_client.php");
     
    		$expediteur = "..."; 
     
    // Le destinataire du mail
    $destinataire = "...";   
     
     // objet du mail
    $objet = "...";
    		$mail_html  = 'MIME-Version: 1.0' . "\r\n";
    		$mail_html .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
    		$mail_html .= "From:$expediteur" . "\r\n";
     
    		// on envoit le mail
    		mail($destinataire, $objet, $message, $mail_html);
    		print "e-mail envoyé correctement";
     
    ?>

    Quand je fais ca j'obtient un 1 dans le body de mon mail...


    Comment je peux inclure ce fichier correctement???
    Juste un petit truc, quand j'affiche mail_client.php, alors toutes les info sont la.

    Merci,
    guigo

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    625
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 625
    Points : 822
    Points
    822
    Par défaut
    hello,

    php.net -> include

    tu peux t'inspirer des deux derniers exemples de la fonction include avec return..

    soit :

    mail.client.php:
    ligne 1 : ob_start()

    dernieres lignes:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $var=ob_get_contents();
    ob_end_clean();
    return $var;
    et ensuite dans ton code tu pourras employer $truc = include( 'mail.client.php' );

  5. #5
    Membre confirmé Avatar de guigo
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 612
    Points : 576
    Points
    576
    Par défaut oki doki
    merci j'essaye,
    je mettrais la reponse exacte dans peut de tps

Discussions similaires

  1. [iNotes] Ajouter un lien fichier dans le corps d'un mail
    Par dominux dans le forum Lotus Notes
    Réponses: 4
    Dernier message: 07/02/2024, 11h13
  2. Inclure une liste de valeurs dans le corps d'un mail
    Par MeriemDj dans le forum Développement de jobs
    Réponses: 2
    Dernier message: 18/06/2014, 09h07
  3. Importer un fichier .txt dans le corp d'un mail
    Par Cecias dans le forum VBScript
    Réponses: 1
    Dernier message: 05/07/2012, 09h53
  4. comment inclure un tableau dans le CORPS d'un mail Lotus Notes
    Par Mathusalem dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 08/07/2008, 16h48
  5. Réponses: 3
    Dernier message: 16/02/2006, 14h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo