Posez votre question Signaler

Envoyer une page php par mail

najkaj 12Messages postés 14 avril 2003Date d'inscription - Dernière réponse le 25 nov. 2011 à 01:08
Bonjour à tous!
En PHP, je cherche un script permettant d'envoyer la page courante affichée dans le navigateur par mail.
on voit ça partout "Envoyer cette page à un ami" mais : COMMENT CA MARCHE?
Merci d'avance à ceux qui pourront m'aider.
A+
Lire la suite 

Envoyer une page php par mail »

6 réponses
Réponse
+0
moins plus
Salut !


<?
$to = 'monr@email'; // email du destinataire
$sujet ='test mail html'; //le sujet


$from ="From: votre@email.com \r\n"; //votre email
$from .="MIME-Version: 1.0\r\n"; //on défini le type mime pour le message
$from .="Content-Type: text/html; charset=us-ascii\r\n"; //ici on défini le format , soit html

$message = " "; //entrez ici un code html

mail($to,$sujet,$message,$from); // la fonction mail

?>

Le truc, c'est que dans $message tu mets ton code HTML. Le tout est maintenant de récupérer le code de ta page, le mettre sous forme d'1 chaine de caractère à placer dans $message.
Maintenant, existe-t-il une fonction pour faire cette opération? Là est la clé de l'optimisation.

Sinon tu peux regénérer ton code HTML depuis zero, mais c chiant, long, pas optimisé....c'est pas la solution je pense.

Voici la route ....

A+
Ajouter un commentaire
Réponse
+0
moins plus
merci pour ton aide, je vais essayer de trouver la fonction pour récupérer le code et voir si ca marche.
A+
2Spartiate - 4 juin 2004 à 13:51
Salut !

Je pense que le truc, c'est qu'il faut mettre ton HTML en variable, genre (c'est tout con):


------------>début du code

<html>
<body>

<?

$html = " tralala..." ; ( <== et là attention aux ", et aux ' =>\", \')

echo $html;

[...]

$message = $html;
mail($to,$sujet,$message,$from);

?>

</body>
</html>

<------------ fin du code


Ca va envoyer le code html...
...mais il sera lu au format texte si tu ne renseignes pas le type mime, dans les en-têtes (text/html)

et voilou !


<=2Spartiate=> La vie est belle...
stefde3 - 25 nov. 2011 à 01:08
cette fonction fonctionne -t'elle avec PHP5 ou HTML 5 ?

car depuis 2003 il s'en est passé des choses ^^
Ajouter un commentaire
Réponse
+0
moins plus
Salut, moi je souhaiterais qu'une page avec un formulaire me soit envoyé tel quel (avec les données du formulaires ; ) est-ce possible ??
Taboujr- 4 juin 2004 à 14:23
A priori oui, c'est possible.

Ce que je ferai :

Ton formulaire est généré par une page php, appelons la form.php.

Dans form.php, tu as
si (les variables n'existent pas dans le $_POST) {
afficher le formulaire avec des variables vides
} sinon {
afficher le formulaires avec des variables remplies (des éléments du $_POST) }

ensuite, une page de traitement ou tu appelles ta page form.php et tu la met dans un buffer (pour ne pas l'afficher) et tu envoie le buffer dans le contenu de ton mail.

Pour utiliser le buffer :
http://fr2.php.net/manual/fr/function.ob-start.php
http://fr2.php.net/manual/fr/function.ob-get-flush.php
http://fr2.php.net/manual/fr/function.ob-end-clean.php

Ca devrait fonctionner.

.:: TaBou JuNioR ::.
J'ai des questions à toutes vos réponses. [W. Allen]
Ajouter un commentaire
Ce document intitulé « envoyer une page php par mail » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?