|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Candidat au titre de Membre du Club
![]() Débutant en XSLT Inscription : avril 2011 Messages : 53 ![]() |
Bonjour,
Dans un fichier mail.php je met en page un mail (formaté html). Dans un fichier envoie.php j'utilise la fonction mail() pour envoyer ce mail. J'aimerais pouvoir stocker le code html contenu dans le fichier mail.php dans une variable $message afin de l'utiliser dans ma fonction mail(). Est-ce possible ? Pour le moment j'utilise la syntaxe : Mais quand je fais : Il me retourne la valeur "1" ... Merci d'avance.
|
|
|
00
|
|
|
#2 |
|
Membre habitué
![]() Développeur Web Inscription : janvier 2008 Messages : 365 ![]() |
Salut,
Utilise la fonction file_get_contents() en mettant l'URL http:// étant donné qu'il faut que ton PHP soit interprété : Code :
$mail = file_get_contents('http://localhost/TON_URL/mail.php'); |
|
00
|
|
|
#3 |
|
Membre Expert
![]() Inscription : septembre 2010 Messages : 1 242 ![]() |
Non faut pas faire comme ça. Il faut que $message soit égal à ta chaine de caractère qui constitue le message formaté html.
include permet d'inclure du code mais pas de l'affecter à une variable. Dans ce cas cela te retourne 1 parce que la fonction a trouvé le fichier mail.php. L'inclusion s'est faite correctement mais il n'y a pas eu d'affectation de code à la variable.
__________________
- Réalisations - Interface graphique : génération en javascript d'objets défilants, texte et/ou images, mode horizontal ou vertical. |
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() Inscription : septembre 2010 Messages : 1 242 ![]() |
... je viens de lire le message de Khleo
Effectivement si ton fichier mail.php contient exclusivement le texte de ton message avec ses balises html tu peux utiliser Code :
$mail = file_get_contents('mail.php');
__________________
- Réalisations - Interface graphique : génération en javascript d'objets défilants, texte et/ou images, mode horizontal ou vertical. |
|
|
00
|
|
|
#5 |
|
Membre habitué
![]() Développeur Web Inscription : janvier 2008 Messages : 365 ![]() |
Salut,
Oui, uniquement si son fichier .php contient uniquement du texte. (Bizarre de lui avoir donné cette extension, un .htm ou un .txt aurait suffit.) ++ |
|
00
|
|
|
#6 | |
|
Candidat au titre de Membre du Club
![]() Débutant en XSLT Inscription : avril 2011 Messages : 53 ![]() |
Bonjour,
Merci pour vos réponses rapides ! Si j'utilise un mail.php c'est parce j'étais partie sur une logique de travail "pratique". J'ai séparé header, contenu et footer puisque je vais être amené à faire des modifications, en séparant tout ça je peux travailler plus clairement. J'ai fais le test avec la fonction que vous m'avez conseillée. A savoir : Code :
$message = file_get_contents('http://mon_url/mail.php') Citation:
Dois-je en conclure que Free interdit cette fonction ? Ou le bug vient de ma manip' ? (à savoir que l'envoie de mail html fonctionne si j'écris le code à la main, en string, dans ma variable $message) J'ai fais un test avec un fichier mail.htm et je l'ai appelé avec la fonction file_get_contents()... mais j'ai la même erreur. |
|
|
|
00
|
|
|
#7 |
|
Membre habitué
![]() Développeur Web Inscription : janvier 2008 Messages : 365 ![]() |
Et en essayant file_get_contents('mail.php') ?
|
|
00
|
|
|
#8 |
|
Candidat au titre de Membre du Club
![]() Débutant en XSLT Inscription : avril 2011 Messages : 53 ![]() |
Avec
Code :
$message = file_get_contents('mail.php') Par contre avec un fichier html Code :
$message = file_get_contents('mail.htm') ![]() Je peux me contenter de ca. Mais comme dis plus haut, idéalement, j'aurais aimé pouvoir inclure dans ma variable $message, le code html interprété dans mon mail.php Pour plus d'aisance de travail. Si qqun à une idée, sur la faisabilité (ou pas!) je suis toujours preneur. Autrement, je viendrais cocher ce topic comme "Résolu" en fin d'aprèm. A bientôt et merci encore! |
|
|
00
|
|
|
#9 |
|
Membre Expert
![]() Inscription : septembre 2010 Messages : 1 242 ![]() |
Montres-nous le code de mail.php.
__________________
- Réalisations - Interface graphique : génération en javascript d'objets défilants, texte et/ou images, mode horizontal ou vertical. |
|
|
00
|
|
|
#10 | ||||
|
Candidat au titre de Membre du Club
![]() Débutant en XSLT Inscription : avril 2011 Messages : 53 ![]() |
Le code de mail php est très succinct, comme dis plus haut, je fais des includes pour séparer mes zones de travail.
Idéalement, j'aimerais garder cette structure (sinon autant travailler directement en html) surtout qu'en développant la mise en page de mon mail/newsletter, ca va se complexifier (il faut mettre les styles en inline alors...) Code :
Voici ce que ca donne une fois compilé en html : Code :
Merci de se pencher sur le pb en tout cas
|
||||
|
|
00
|
|
|
#11 | ||
|
Débutant
Laurent Webmaster Inscription : octobre 2006 Messages : 2 873 ![]() |
Citation:
Et pour info, ça signifie quoi Citation:
|
||
|
|
00
|
|
|
#12 |
|
Candidat au titre de Membre du Club
![]() Débutant en XSLT Inscription : avril 2011 Messages : 53 ![]() |
Je n'ai pas fini la mise en page. J'ai mis une # en attendant de mettre le nom du fichier.jpg Ca aurait une incidence sur la récupération du html avec file_get_contents()? Je rappelle que je n'ai pas de soucis quand j'utilise cette fonction avec un fichier mail.htm qui contient le code vu plus haut. |
|
|
00
|
|
|
#13 | |
|
Débutant
Laurent Webmaster Inscription : octobre 2006 Messages : 2 873 ![]() |
Citation:
|
|
|
|
00
|
|
|
#14 | ||
|
Membre habitué
![]() Développeur Web Inscription : janvier 2008 Messages : 365 ![]() |
Salut,
Normalement, il faut utiliser les includes avec des pincettes (et a bonne escient) car ils utilisent beaucoup de ressources. Je te conseil d'utiliser des fonctions : Code :
Ensuite, pour envoyer ton mail, tu as juste à faire : Code :
$mail = mail_header().mail_contenu().mail_footer() |
||
|
00
|
|
|
#15 |
|
Invité de passage
![]() Frederic AFPA Inscription : novembre 2008 Messages : 18 ![]() |
Si jamais tu veux utiliser les includes tu peu toujours dans ton fichier mail.php faire :
et dans envoie.php tu fait un include de mail.php et tu utilise la variable $message M'enfin la tu devrais avoir assez de solutions différentes pour trouver ce dont tu as besoin |
|
|
00
|
|
|
#16 | ||
|
Expert Confirmé
![]() Inscription : mars 2005 Messages : 2 823 ![]() |
Une autre possibilité :
Code :
A voir si free supporte les fonctions ob.
__________________
Un problème exposé clairement est déjà à moitié résolu Keep It Smart and Simple |
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com