Formulaire de contact - reception du contenu

Matthieu -  
gryzzly Messages postés 5220 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
Je vous sollicite pour régler un problème. Alors voila, j'ai repris un formulaire de contact sur le net, très simple, qui fonctionne jusqu'à ce que je reçoive le mail avec le contenu du contact.
Et le problème c'est qu'il est vide !

J'aimerais savoir de quelle manière reprendre le contenu des champs de contact... Si quelqu'un peu m'aider un peu ça serait très sympa ! Merci d'avance.

Matthieu

-------------------------------------------------
Je vous mets l'extrait de code PHP:

<?

/* Email du destinataire (mettez ici votre email) */
$destinataire = "mon.email@mail.fr";

/* Récupération */
$nom = $_POST['nom'];
$societe = $_POST['societe'];
$tel = $_POST['tel'];
$header = "From: " . $_POST['email'];

/* Vérification */
if ( $nom == "" ) {
echo "Veuillez indiquer un nom.";
$erreur = true;
}
if ( $societe == "" ) {
echo "Veuillez indiquer une societe.";
$erreur = true;
}
if ( $tel == "" ) {
echo "Veuillez indiquer votre numéro de telephone.";
$erreur = true;
}

/* Vérification du mail */
$email_regex = "^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+.[a-z0-9-]";
if ( $email == "" OR !eregi( $email_regex , $email ) ) {
echo "Veuillez indiquer un email valide.";
$erreur = true;
}

/* Envoi du mail */
if ( !$erreur ) {
mail( $destinataire , $objet , $message , $header );
echo "Le message a été envoyé.";
}

?>

5 réponses

gryzzly Messages postés 5220 Date d'inscription   Statut Contributeur Dernière intervention   1 336
 
On se la joue comment ? On te donne des indices pour que tu comprennes par toi même ou on te mâche le travail de façon inutile pour toi ?

J'opte pour le premier :

1) A quoi ça sert :
mail(); 

2) Que doivent contenir :
$destinataire , $objet , $message , $header

3) Quelles informations veux tu mettre dans le contenu du mail ?
4) Comment concaténer des variables ?

Lorsque tu auras cherché et trouvé la réponse à toutes ces questions, tu trouveras ta solution :o)
0
Matthieu
 
Merci de répondre si vite !

Je médite et je reviens vers toi un peu plus tard...
0
Matthieu
 
Merci mec, t'es un crack, j'ai bien compris le mécanisme.
Seulement y'a juste un petit détail qui doit relever de la syntaxe que je n'arrive pas à régler:

Les champs $header, $messages et $objet correspondent bien aux emplacement du mail que je reçois , mais comment faire pour recevoir les infos de deux champs dans un même espace? Avec du code tu vas comprendre :

$email = $_POST['email'];
$objet = $_POST['societe'];
$message = $_POST['tel']; $_POST['Questionnements'];
$header = "From: " . $_POST['email'];

(en gras le chamsp que j'essaye de caler)
Je ne sais pas si j'ai réussi à me faire comprendre. En tous cas, merci !
0
gryzzly Messages postés 5220 Date d'inscription   Statut Contributeur Dernière intervention   1 336
 
Bon, on y est presque...

Mais apparament tu n'as pas répondu à toutes mes questions :o)

Comment fonctionne la concaténation en php ? (En plus, elle est utilisée dans ta ligne de headers... Comme quoi, ça sert à rien de recopier "betement" !)
0
Matthieu
 
Bonjour !

A force d'essais répétés, j'ai pu adapter à ma convenance mon mail, merci pour tout encore !

Si tu me permets d'abuser encore de tes conseils, j'ai une dernière chose à te demander: J'aimerais mettre en forme la page de confirmation de mon formulaire (celle qui me confirme "votre message a bien été envoyé", car ça me renvoie sur une page blanche avec le texte brut. Ce que j'aimerais faire c'est insérer du code ou même simplement un tableau pour mettre en forme un minimum ma page de confirmation.

Voila où j'en suis :

/* Envoi du mail */
if ( !$erreur ) {
mail( $destinataire , $objet , $message , $email, $Packs );
echo "Le message a été envoyé.";
}

Merci, bonne journée
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
gryzzly Messages postés 5220 Date d'inscription   Statut Contributeur Dernière intervention   1 336
 
Plusieurs solutions, d'autres encore ...

- a la place de echo "Le message a été envoyé."; , une redirection

- toujours à la place du echo, une inclusion d'un fichier et/ou contenu

- a la place de Le message a été envoyé., du contenu html. Ex :
echo "<html><head></head><body><h1>Confirmation</h1><p>Le message a bien été envoyé</p></body></html>";

PS : ce serait bien que tu fasses un petit récapitulatif à la fin de la discussion, pour que cette aide te soit vraiment utile... si tu arrives à expliquer simplement, ce sera définitivement acquis :o)
0