Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

FORMULAIRE D'INSCRIPTION AVEC MAIL DE CONFIRMATION POUR LE VISITEUR


Information sur la source

Catégorie :Formulaires Niveau : Débutant Date de création : 15/05/2003 Date de mise à jour : 23/07/2004 19:34:54 Vu : 29 900

Note :
6,71 / 10 - par 21 personnes
6,71 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (59)
Ajouter un commentaire et/ou une note


Description

Bah c'est pas compliqué et pas mal connu mais je viens de voir dans les dernières recherches qu'on cherchait ce style de code...J'ai du temps libre alors voilà !

CARACTERISTIQUES :

- vous recevez le contenu de n'importe quel formualire dans un mail....
- le visiteur qui a laissé son mail reçoit instantanément un mail que vous aurai préalablemnt remplis
- possibilité de mettre dans le mail pour le visiteur des infos qui vous a filé (par exemple, Bonjour $nom ! Vous vous êtes bien inscrit sous l'adresse $adresse_visiteur ! etc...)

Code ultra commenté !

Svp ne me dites pas que c'est archi connu parce que je le sais déjà, je poste ça juste pour dépanné ceux (il y en a) qui ne connaissent pas encore...
 

Source

  • Action de votre formulaire : "mail_inscription.php"
  • __________________________
  • Dans un fichier nommé mail_inscription.php (situé à la racine de votre serveur).
  • <?php
  • ## Définitions des deux constantes
  • define('ADRESSE_WEBMASTER','votre@mail.com'); // Votre adresse qui apparaitra en tant qu'expéditeur des E-mails
  • define('SUJET','Inscription à la newsletter'); // Sujet commun aux deux E-mail
  • ## Message qui vous sera envoyé
  • $message = "Nom : ".$_POST['nom']."\n\nPrénom : ".$_POST['prenom']."\n\nMail : ".$_POST['email'];
  • ## Appel de la fonction mail() afin de vous envoyé un E-mail contenant les informations saisies par le visiteur
  • mail(ADRESSE_WEBMASTER,SUJET,$message,'From: '.ADRESSE_WEBMASTER);
  • ## Message envoyé au visiteur
  • $message = "Bonjour ".$_POST['prenom']." ".$_POST['nom']." !\n\nVotre inscription à la News-Letter vous est confirmée.\n\nRappel de l'adresse inscrite : ".$_POST['email']."\n\nBonne journée,\n\nvotre Webmaster.";
  • ## Second appel de la fonction mail() : le visiteur reçoit cet E-mail
  • mail($_POST['email'],SUJET,$message,'From: '.ADRESSE_WEBMASTER);
  • ?>
Action de votre formulaire : "mail_inscription.php"
                                 __________________________

Dans un fichier nommé mail_inscription.php (situé à la racine de votre serveur).

<?php

## Définitions des deux constantes
define('ADRESSE_WEBMASTER','votre@mail.com'); // Votre adresse qui apparaitra en tant qu'expéditeur des E-mails
define('SUJET','Inscription à la newsletter'); // Sujet commun aux deux E-mail

## Message qui vous sera envoyé
$message = "Nom : ".$_POST['nom']."\n\nPrénom : ".$_POST['prenom']."\n\nMail : ".$_POST['email'];

## Appel de la fonction mail() afin de vous envoyé un E-mail contenant les informations saisies par le visiteur
mail(ADRESSE_WEBMASTER,SUJET,$message,'From: '.ADRESSE_WEBMASTER);

## Message envoyé au visiteur
$message = "Bonjour ".$_POST['prenom']." ".$_POST['nom']." !\n\nVotre inscription à la News-Letter vous est confirmée.\n\nRappel de l'adresse inscrite : ".$_POST['email']."\n\nBonne journée,\n\nvotre Webmaster.";

## Second appel de la fonction mail() : le visiteur reçoit cet E-mail
mail($_POST['email'],SUJET,$message,'From: '.ADRESSE_WEBMASTER);

?>

Conclusion

Ne me dites pas "c'est nul et trop connu".....encore une fois je le sais mais je l'ai posté pour ceux qui en éprouvent encore le besoin. Rappellez vous vos débuts laborieux ;)

Pyroflo

Tout sur la pyrotechnie - http://www.abcpyro.com
 

Historique

23 juillet 2004 19:34:55 :
Suite aux nombeux messages privés concernant cette source, je l'ai recodé. Elle est maintenant plus "propre" et foncionne sur tous serveurs.

Commentaires et avis

signaler à un administrateur
Commentaire de pyroflo le 15/05/2003 23:17:07

Abstenez vous ;)

signaler à un administrateur
Commentaire de mathieumg le 15/05/2003 23:33:32

Très bien.

C'est clair et simple.

signaler à un administrateur
Commentaire de pyroflo le 15/05/2003 23:35:26

Merci ! Il manquait plus que une note lol je plaisante :p

signaler à un administrateur
Commentaire de mathieumg le 16/05/2003 00:47:25

Ok c'est fait

signaler à un administrateur
Commentaire de pyroflo le 16/05/2003 00:48:56

lol

signaler à un administrateur
Commentaire de mathieumg le 16/05/2003 00:50:47

Tu répond vite toi

signaler à un administrateur
Commentaire de pyroflo le 16/05/2003 00:57:51

Badaboum ! C'est encore moi ;)

signaler à un administrateur
Commentaire de revinc le 16/05/2003 12:25:25

tu devrais vérifier la syntaxe du mail du visiteur avec des expressions régulières histoires de pas en envoyer le mail de confirmation nul part.

et pour personnaliser un peu plus, on peut toujours faire:

FROM: Webmaster XXX &lt;$from2&gt;

signaler à un administrateur
Commentaire de pyroflo le 16/05/2003 12:29:57

Tu as raison mais j'ai posté ça hier soir en 3 minutes donc j'y reviendrai dessus cet après-midi ;)

Quant à FROM : Webmaster XXX &lt;from2&gt; c'est une idée mais je n'ai pas tout dit car cela aurait été trop long alors j'ai pris le script que je m'étais fait et j'ai commenté. :D

Cette après midi promis je mets à jour !

signaler à un administrateur
Commentaire de mathieumg le 16/05/2003 12:36:28

Tu es tout le temps sur CS pyroflo ?

signaler à un administrateur
Commentaire de pyroflo le 16/05/2003 12:39:18

Quand je suis connecté au net OUI...

signaler à un administrateur
Commentaire de revinc le 16/05/2003 13:17:28

mathieumg&gt; toi aussi t tout le temps connecté ?

signaler à un administrateur
Commentaire de mathieumg le 16/05/2003 13:20:38

Oui assez souvent !

signaler à un administrateur
Commentaire de MisterJAD le 23/06/2003 11:49:46

esske ya besoin de spécifications pour la fonction mail(); ? par ex si je veu la faire tourner en local depuis un serveur ki n'est pas le serveur mail (support POP3-SMTP) ?

signaler à un administrateur
Commentaire de MisterJAD le 23/06/2003 12:08:36

ok c bon en fait...
jtrouvais pas le php.ini de windows :$

signaler à un administrateur
Commentaire de pyroflo le 23/06/2003 15:13:57

Heuu si j'ai bien compris ta question, il faut que tu utilises la socket 25 (SMPT) mais là je ne connais pas trop...

Regardes sur le site il y a déjà eu des posts de ce genre de sources :)

signaler à un administrateur
Commentaire de Gbn le 31/07/2003 15:31:12

Bonjour,
Je suis plus que débutant, et vieux à la fois.
J'essaie de mettre en place le modèle de formulaire proposé très gentiment par pyroflo.
Et bien, c'est pas évident !!!.
Bon, je voulais vous dire merci car vous partagez vos connaissances, et vous n'excluez (pas encore) les vieux débutants...
Au fait, je ne parviens pas à faire fonctionner ce formulaire. Je dois probablement raté une marche (ou plusieurs).

signaler à un administrateur
Commentaire de jeje70 le 14/08/2003 15:58:14

moi non plus j'y arrive pas... merci de m'aider jeje70@netcourrier.com

signaler à un administrateur
Commentaire de nonozy le 21/08/2003 10:01:47

Salut !!

Merci pour la source, mais ça marche à 50%...
J'arrive bien à recevoir le mail du visiteur, mais par contre le visiteur ne reçoit pas de mail de confirmation... Y aurait-il qqch qui manquerait dans la source ?
Je n'ai aucune erreur de la page au niveau du script, mais je ne reçois rien... SVP ! HELP !!

signaler à un administrateur
Commentaire de 751 le 01/09/2003 16:59:40

C'est trées bien 10/10 et merci. Continuez.

signaler à un administrateur
Commentaire de mikachu le 05/09/2003 13:32:35

salut a toi piroflo voila j ai un petit prob je debute et j ai trouve ton code qui m est tres utile pour se ke j ai envie de faire mais mon petit souci c est ke j arrive pas a le faire fonctionner . tous seul il fonctionne mais c est apres en fait comment je fais pour le rataché a un formulaire pour k il m envoi les donnée du mec ki veut remplir le formulaire si tu capte se ke je viens de dire ca serais sympa de m aider merci d avance

signaler à un administrateur
Commentaire de boopette le 15/02/2004 14:40:46

Snif moi ca marche pas!!
dans mon php.ini
jai mis ca:

STMP=smtp.ifrance.com
sedmail_from=moi@ifrance.com

et jai tjs une erreur comme ca
Warning: mail(): SMTP server response: 550 5.7.1 Unable to relay for moi@laposte.net

Que dois je faire?

signaler à un administrateur
Commentaire de mathieumg le 15/02/2004 14:48:01

Ah, cette bonne vielle source qui m'a apprit la fonction mail() !

Comment saurais-je te remercier ! :p


Mathieu M-G
http://qc-net.com

signaler à un administrateur
Commentaire de pyroflo le 15/02/2004 14:57:37

boopette, tu t'es peut être trompé(e) dans le copié/collé mais je rectifie quand même:

SMTP = smtp.ifrance.com;
sendmail_from = moi@ifrance.com;

Tu peux essayer en te servant du SMTP de ton FAI aussi, p'tet que IFrance...
Sinon, je ne vois pas pourquoi cela ne marcherait pas chez toi :s

Au pire si ça ne fonctionne toujours pas, ce n'est pas grave car tu travaille en local là, non ? :p

signaler à un administrateur
Commentaire de boopette le 15/02/2004 15:44:05

Ben jessaye un peu tout les smtp pour voir ca me fait pareil
SMTP = smtp.lapote.net;
sendmail_from = moi@laposte.net;

sinon jai un STMP perso
SMTP=ma_machine
sendmail_from= babla@ma_machine
(mon domaine etant le nom de ma machine et jai un relais sur ladresse de ma machine + une autre c tout, sous IIS en fait)

SNIF !!
ya kelkechose ke je comprends pas
pour envoyer en mode SMTP
dans le php.ini fo remplir les 2 lignes ke jai au dessus
mais dans le cas ou je veux utiliser que la fonction mail() ???

signaler à un administrateur
Commentaire de pyroflo le 15/02/2004 15:59:47

Pour utiliser la fonction mail() sous EasyPHP il faut renseigner ces 2 lignes dans le INI.
Théoriquement cela devrait marcher...

Moi je n'ai aucun problème !?

signaler à un administrateur
Commentaire de boopette le 15/02/2004 16:03:38

ben j'utilise pas EasyPHP
c PHP linstallation normale

signaler à un administrateur
Commentaire de pyroflo le 15/02/2004 16:10:03

Ah ok, ça change alors peut être la donne mais j'en doute.

A mon avis c'est exactement pareil puisque ces 2 lignes se trouvent dans le INI de PHP donc que tu sois sous EasyPHP ou pas, la marche à suivre est la même.

Il faut bien que PHP se serve d'un serveur SMTP pour envoyer les mails.

Conclusion: je te conseille de poster dans les forums, car je n'en sais pas plus car chez moi cela marche très bien ;)

signaler à un administrateur
Commentaire de boopette le 15/02/2004 16:18:03

tu as un smtp ki marche bien toi?
que je mette pareil pour voir??
donne moi tes deux lignes stp, c pour tester

signaler à un administrateur
Commentaire de pyroflo le 15/02/2004 16:27:23

J'utilise mon FAI...Wanadoo.

SMTP = smtp.wanadoo.fr;
send_from = monadresse@wanadoo.fr;

signaler à un administrateur
Commentaire de hellakroeti le 20/02/2004 15:19:30

salut,

j'ai le problème que les charactères comme é, à etc ne sont pas traduit correctemment
quand le mail avec les infos saisies arrive chez moi...
c'est un formulaire crée en flash qui se réfère sur un script php similair à celui en haut.
est-ce qu'il faut rajouter des codes dans le script qui "traduisent" ces charactères?

pouvez-vous m'aider?

merci!!!!!!

ps: sorry pour le français... suis  d'origine allemande

signaler à un administrateur
Commentaire de fitterashes le 25/02/2004 18:00:14

Merci pour ce source, ca marche tres bien et c'est facilement configurable.

Par contre est-il possible d'introduire une fonction qui vérifie que tous les champs du formulaire aient été remplis ? (j'ai pas trouvé ailleurs)

merci

signaler à un administrateur
Commentaire de pyroflo le 25/02/2004 19:20:30

hellakroeti, je n'ai jamais rencontré ce problème désolé.

fitterashes, pour vérifier si une chaine est vide utilises Empty()

echo (Empty($maChaine)) ? 'Vide.' : 'Remplie';

@+

signaler à un administrateur
Commentaire de MetalDestroyer le 14/04/2004 16:38:11

Bonjour,

pyroflo =&gt; pourrais tu me dire où se trouve le fichier php.ini d'Easy php ??
C'est que j'en ai trouvé un dans Easyphp/php/pear/tests/php.ini mais son contenu est vide.
Il n'y a juste un include_path = ...
rien d'autre.

Sinon, j'ai essayé autrement avec php-4-3-4 et lancé php avec un serveur Apache (donc différent de Easyphp ).
Mais j'ai un message de ce type :
Warning: mail() [function.mail]: "sendmail_from" not set in php.ini or custom "From:" header missing in e:\tetcofrance\test\methodemail.php on line 9


Or j'ai donné un SMTP et son sendmail_from, maismarche pas. Probablement que le fichier php.ini soit mal placé mais j'en doute.
Où devrait exactement se situé php.ini ??

signaler à un administrateur
Commentaire de pyroflo le 14/04/2004 22:31:52

Avec EasyPHP 1.7 le php.ini est dans EasyPHP/Apache/php.ini :)

signaler à un administrateur
Commentaire de MetalDestroyer le 14/04/2004 22:59:24

G la 1.6 car la 1.7 ne gère pas très bien le php sauf si je configure bien le fichier mais g oublier la commande à modifier.

signaler à un administrateur
Commentaire de pyroflo le 14/04/2004 23:06:12

La 1.6 ne gère pas bien le PHP ? mdr

signaler à un administrateur
Commentaire de MetalDestroyer le 14/04/2004 23:48:24

je parle plutot du 1.7 qui ne gère pas très bien le php.

signaler à un administrateur
Commentaire de pyroflo le 15/04/2004 07:23:20

Autant pour moi, mais je vois pas pourquoi tu dis ça :s

signaler à un administrateur
Commentaire de metis15 le 23/04/2004 11:09:30

Salut PyroFlo,
Moi non plus j'arrive pas à faire marcher ce PHP.
Ca me retourne le nom des champs, mais vide.
Le mail de confirmation ne vient pas.
Si tu veux regarder mon script adapté, passes-moi ton email ; je suis metis15-enlever-ça-de-là@wanadoo.fr
Merci !!!

signaler à un administrateur
Commentaire de MetalDestroyer le 23/04/2004 12:08:48

Apparemment, j'ai réussit à envoyer un mail() avec la fonction mail().
Le probleme vient du php.ini.
Pour ceux qui ont Easyphp doivent trouver dans leur répertoire un php.ini contenant énormément de ligne de code et de commmentaire et prenez ce fichier (copie-coller) et coller ce fichier php.ini dans votre répertoire windows donc dans Windows, pas besoin de le mettre dans un sous rep.

Ensuite, fait, faite redémarrer Apache sinon, il ne vas pas prendre en compte les modif.
Arg, erreur de ma part, supprimer le fichier php.ini contenu dans Easyphp sinon sa ne marche pas.

Et bien sur pensez à configurer le SMTP et le sendmail_from dans le php.ini.

signaler à un administrateur
Commentaire de MystikorN le 16/06/2004 19:52:16

Pour l'action je la mets comment en fait ??? j'ay connait rien ...
&lt;form=post action=mail.php&gt; c'est ça ???

signaler à un administrateur
Commentaire de pyroflo le 16/06/2004 19:58:21

Oui action="mail_inscription.php" :)

signaler à un administrateur
Commentaire de MystikorN le 16/06/2004 20:00:33

Mais sa je le mets dans le &lt;head&gt; ou dans le body ?

signaler à un administrateur
Commentaire de MystikorN le 16/06/2004 20:04:19

A ouaiis comme ca :  

&lt;?
print ("Formulaire");
print ("&lt;form method=\"post\" action=\"mail_inscription.php\"&gt;") ??

signaler à un administrateur
Commentaire de pyroflo le 16/06/2004 20:49:00

Je te conseille d'apprendre l' HTML avant de commencer le PHP ;)

signaler à un administrateur
Commentaire de asnuf le 04/07/2004 21:15:44

Y a til moyen de rajouter une insertion de pièce jointe à ce formulaire avec vérification du nom et nombre des pièces jointes [il fodré ke les pièces jointes soient online.gif offline.gif connecte.gif deconecte.gif away.gif absent.gif et ke si lune de celles ci est mankante un message derreur soit donné aidez moi svppppp

signaler à un administrateur
Commentaire de mathieumg le 06/07/2004 01:31:02

Pour cela utilise la class simplemail.

http://classes.scriptsphp.org/doc.mail

Mat

signaler à un administrateur
Commentaire de pyroflo le 06/07/2004 01:33:21

Une petite recherche sur Google te donnerait ça:

http://www.phportail.net/articles/article5_41.php

signaler à un administrateur
Commentaire de Gnatus le 21/07/2004 17:04:16

Salut tout le monde...
Bon, je vous l'annonce de suite... je suis une bille en php, mais je me soigne !
J'ai essayé d'utiliser ce code qui m'a l'air fort sympa, mais rien à faire j'arrive pô !
Je crée un fichier .htm dans lequel je mets un formulaire avec des champs, l'action est bien "mail_inscription.php", j'ai bien mis le fichier en php à la racine aussi, mais il veut rien savoir !
Tu parles de $nom et autres $... comme  input des formulaires... est-ce que ça veut dire que c'est exactement ça que je doit mettre dans la case input, avec le $ est l'accent (ça me semble bizarre mais bon...)
Pffft pas évident !
Si quelqu'un a 5 mn, le fichier s'appelle testmail.htm, et se trouve là: www.mag467.com/testmail.htm - je n'ai besoin que de 3 renseignements: no, prénom et email, j'ai donc essayé d'adapter au mieux...
AU SECOUOUOUOURS !!
Ah, oui, une précision: le but est de créer une mailing list pour mon groupe de zic... voilà, vous savez tout ! @ très vite j'éspère !
Gnatus/Reno

signaler à un administrateur
Commentaire de mathieumg le 21/07/2004 17:10:11

Tu ne dois pas mettre les $ dans le nom des tes input.

Aussi pas d'accent comme "prénom" met "prenom" à la place.

Voilà

Mathieu M-G
mathieumg@qc-net.com

signaler à un administrateur
Commentaire de Gnatus le 23/07/2004 19:05:14

Merci Mathieu !
Ca marche super bien...
@ bientôt

http://www.mag467.com

gnatus/reno

signaler à un administrateur
Commentaire de pyroflo le 23/07/2004 19:40:34

Code mis à jour :)

signaler à un administrateur
Commentaire de crewstyle le 21/12/2004 22:08:49

AAAAAAAAAAAhHHHHHHH !!!
Salut Pyroflo !! Ton code est merveilleusement trop fort !!!

Malheureusement, moi je suis une brouette en php ... Il faut que tu me guide s'il te plait !!!

Si j'ai bien tout capté, c'est une newsletter (ou mailing list ! Ah ca pour parler anglais, je fais le malin, mais quant il s'agit de parler php ... je suis plus là !!)

Mais ... où est-ce que j'insere ce formulaire ???
Dans tout les autres, il fallait mettre un truc du genre :

<form action ... blablabla ...>

bidul truc chouette

</form>

Mais là, qu'est-ce que je dois faire ??? J'ai deja créer le fichier mail_inscription.php ... mais pour le reste ...

Aide-moi s'il te plait !!!!!!!

PS : bonnes fêtes a tous :D

signaler à un administrateur
Commentaire de pyroflo le 21/12/2004 22:27:09

Salut crewstyle :-)

Merci pour l'enthousiasme ^^

Donc un formulaire d'exemple :

<form action="mail_inscription.php" method="POST">

<input type="text" name="email" />
<input type="text" name="nom" />
<input type="text" name="prenom" />

<input type="submit" value="Envoyer">

</form>

Et voilà :-)

Bonnes fêtes !


signaler à un administrateur
Commentaire de crewstyle le 22/12/2004 00:30:18

tu sais quoi ... je t'aime ;) :P

Je te dirais, une fois le site en ligne, si ça marche du feu ou si ça marche du tonnerre ;)

En tout cas, merci !!
Je vais pouvoir crâner devant mes potes :P

JE T'AIIIIIIIIMMMEEEEEE :P

Et bonnes fêtes à tous :D

signaler à un administrateur
Commentaire de pyroflo le 22/12/2004 00:50:14

Viens faire un calin à PyRoFlo, viens ! mouarf :-)

signaler à un administrateur
Commentaire de vigub le 04/07/2006 10:44:06

Hello les jeunes, je suis un gros noob en PHP et ça fait plaisir de trouver des bouts de code à mon niveau. Surtout lorsque l'on essaye d'apprendre tout seul dans son coin comme un pauvre SDF lol :)

Mais seulement voila j'ai un petit soucie.
J'ai appliqué à la lettre les consignes données si dessus.
Tout se passe trés bien pour le visiteur du site, il reçoit son mail de confirmation quasiment instentanément...

Par contre pour le webmaster càd moi lol... c'est la grande cata !
je ne récupere aucune données normallement elles devraient arriver dans ma boite au lettre ?
Allez j'y retourne pour voir ce qui bug !!!!

En attendant si vous avez une petite idée pour me dépanner...
Encore merci à tous et surtout à pyroflo...

ps n'hésite pas à mettre des bouts de code spécial noob, y'a des FAN !!!! lol
C'est ce qui fait que l'on aime tous ce site, y'en a pour tous les niveaux... c'est trés important....

signaler à un administrateur
Commentaire de wiwiwiwi le 03/07/2008 18:24:24

merci
car même si comme tu dit c vachement, sa fait toujours plaisir de pouvoir trouver FACILEMENT se genre de sources

Ajouter un commentaire



Nos sponsors

Sondage...

CalendriCode

Octobre 2008
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,20 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.