Formulaire envoi vers boite mail puis retour sur formulaire [Fermé]

Signaler
-
 ecoagenc -
Bonjour, je suis en création d'un site internet avec une page contact contenant un petit formulaire. une fenêtre pour confirmation d'envoi en javascript et un lien vers une page PHP sur l'action d'un bouton envoyer tout semble fonctionner sauf que je ne reçois pas mes données du formulaire dans ma boite mail.

Mon code javascript :
<SCRIPT LANGUAGE="JavaScript">
function afficher()
{
alert("Votre message a bien été envoyé. Merci!")
}
</SCRIPT>

Mon code du formulaire :
<div style="text-align:center;"><input action="formmail.php" align="center" name="ch_envoi" type="submit" value="Envoyer" onClick="afficher()">
</div>

Mon code de la page formmail.php :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<?php
header('Location: Contact.html');
?>
<html xmlns="http://www.w3.org/1999/xhtml"><br />

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body>

<?php

$msg = "Nom:\t$nom\n";
$msg .= "Mail:\t$mail\n";
$msg .= "Telephone:\t$telephone\n\n";
$msg .= "Motif:\t$motif\n\n";
$msg .= "Message:\t$message\n\n";

$recipient = "***@***";
$subject = "Demande d'informations depuis le site ecoagencement";

$mailheaders = "From: Site Ecoagencement <> \n";
$mailheaders = "Reply-To: $sender_email\n\n";

mail($recipient, $subject, $msg, $mailheaders);


?>
</body>
</html>

Je n'y connais rien en programmation, j'ai fais ça toute seule ça ne me semble pas très compliqué à réaliser. Qu'est-ce qui ne va pas ? Si quelqu'un à la temps de regarder, Merci d'avance.

2 réponses

Messages postés
1158
Date d'inscription
samedi 17 mai 2008
Statut
Membre
Dernière intervention
6 mars 2016
187
Bonjour

Tu peux mettre le code te formulaire en entier ?
Car visiblement il manque pas mal de choses..
Messages postés
1
Date d'inscription
lundi 25 janvier 2016
Statut
Membre
Dernière intervention
25 janvier 2016

Voici le code du formulaire :
<form action="formmail.php" method="post" enctype="text/plain" name="formulaire" id="formulaire">
<fieldset>
<legend><font color="#848079">Informations personnelles</font></legend>
<p style="margin-left:20px">
<br>
<label for="ch_nom">Nom</label>
<input type="text" name="nom" id="ch_nom" accesskey="n" tabindex="1">
<br>
</p>
<p style="margin-left:20px">
<label for="ch_mail">Email </label>
<input type="text" name="mail" id="ch_mail" accesskey="m" tabindex="2">
</p>
<p style="margin-left:20px">
<label for="tel">Tél. </label>
<input type="text" name="telephone" id="tel" accesskey="t" tabindex="3">
</p>
<br>
<fieldset>
<legend align="center"><font color="#848079">Message</font></legend>
<br>
<p style="margin-left:10px">
<label for="motif">Motifs</label>
<select name="motif" id="ch_motif" accesskey="m" tabindex="4">
<option value="none">Motif du contact</option>
<option value="projet" selected>Projet d'aménagement</option>
<option value="produits">Informations sur nos produits</option>
<option value="devis">Demande de devis</option>
<option value="autres">Autres motifs</option>
</select>
</p>
<p style="margin-left:10px">
<label for="ch_text">Votre message</label>
<p style="margin-left:10px"><textarea name="message" id="ch_text" accesskey="v" tabindex="5" ROWS="5" COLS="50"></textarea></p>
</p>
<br>
<div style="text-align:center;"><input action="" align="center" name="ch_envoi" type="submit" value="Envoyer" onClick="afficher()">
</div>
</fieldset>
</fieldset>
</form>

Qu'en penses tu ? merci
Mimiste
Messages postés
1158
Date d'inscription
samedi 17 mai 2008
Statut
Membre
Dernière intervention
6 mars 2016
187
D'accord donc en fait c'est cette partie là qui ne va pas


$msg = "Nom:\t$nom\n";
$msg .= "Mail:\t$mail\n";
$msg .= "Telephone:\t$telephone\n\n";
$msg .= "Motif:\t$motif\n\n";
$msg .= "Message:\t$message\n\n";


les variables $nom, $mail etc... n'existent pas car elles n'ont pas été remplis avec les valeurs de ton formulaire.
Dans ton formulaire, tu a précisé la méthode d'envoi des variables en "post" car tu a mis :
method="post"

du coup, dans ton php ça devrait plutôt ressembler à ça :


$msg = "Nom:\t".$_POST['nom']."\n";
$msg .= "Mail:\t".$_POST['mail']."\n";
$msg .= "Telephone:\t".$_POST['telephone']."\n\n";
$msg .= "Motif:\t".$_POST['motif']."\n\n";
$msg .= "Message:\t".$_POST['message']."\n\n";
> Mimiste
Messages postés
1158
Date d'inscription
samedi 17 mai 2008
Statut
Membre
Dernière intervention
6 mars 2016

Bonjour, J'ai fais un copier coller des variables dans mon fichier php.
Alors super, j'ai bien la réception dans ma boite mail de l'envoi depuis le formulaire avec l'apparition de mes champs.
Petit problème : les champs sont vides.

Nom:
Mail:
Telephone:

Motif:

Message:

Est-ce compliqué maintenant à résoudre. Merci encore pour ton aide.
Mimiste
Messages postés
1158
Date d'inscription
samedi 17 mai 2008
Statut
Membre
Dernière intervention
6 mars 2016
187
enlève de ton formulaire le

enctype="text/plain" 


Il vaut mieux laisser le type d'encodage par defaut
> Mimiste
Messages postés
1158
Date d'inscription
samedi 17 mai 2008
Statut
Membre
Dernière intervention
6 mars 2016

Bonsoir, c'est tout bon. SUPER !

Merci beaucoup pour ton aide et bonne continuation.