Probleme FormulairePHP pas de réponse mail

Fermé
jery_jery2006 Messages postés 5 Date d'inscription mercredi 11 juin 2008 Statut Membre Dernière intervention 11 juin 2008 - 11 juin 2008 à 18:32
jery_jery2006 Messages postés 5 Date d'inscription mercredi 11 juin 2008 Statut Membre Dernière intervention 11 juin 2008 - 11 juin 2008 à 21:34
Bonjour,

Je suis graphiste de profession, et travail dans la pub, ... et crée de temps en temps quelques site internet simple.
Mais ici je me suis lancé dans la réalisation d'un formulaire, qui me pose quelques soucis.

En effet mon formulaire est dans page html avec du javascript.
J'ai utilisé un script qui check si les données sont bien complétés avant de pourvoir Envoyer
Jusque là pas de soucis ...

Ce formulaire est dirigé vers une page php qui devrait traiter les informations du formulaire, de les envoyer sur le server on-line et enfin qui me les livrer dans ma boîte mail.

Seulement un petit soucis...
Je reçois bien mon mail dans ma boîte mais malheursement il est quasi vide puisqu'il me donne juste l'email de l'expéditeur et dans le sujet du mail : Une seule réponse, celle du champs radio.
Mais dans le corps du mail : Rien, vide ... aucune info du formulaire proprement dit ...

Voici ma page html :

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<title>Formulaire 2</title>

<style type="text/css">

Body {
background: white url("");
background-repeat: no-repeat;
background-attachment:fixed;
scrollbar-face-color: #871B21;
scrollbar-shadow-color: #ffffff;
scrollbar-highlight-color: #ffffff;
scrollbar-3dlight-color: #CF4D51;
scrollbar-darkshadow-color: #CF4D51;
scrollbar-track-color: #4E0003;
scrollbar-arrow-color: #ffffff;
z-index:5;}

#personnel{position:absolute;left:10px;top:60px;font-weight:bold;font-size:9px;font-family­:verdana;color:#ffcc33;z-index:3;}
#personneltexte{position:absolute;left:130px;top:6px;font-weight:bold;font-size:9px;font-f­amily:verdana;color:#ffcc33;z-index:3;}
a.tree{font-family:Verdana,Arial,Helvetica,Swiss;font-size:10px;color:#800000;font-weight:­normal;text-decoration:none}
.texte{font-family:Verdana,Arial,Helvetica;font-size:12px;color:#430706;font-weight:normal­;text-decoration:none;z-index:3;}
a:visited.tree{font-family:Verdana,Arial,Helvetica,Swiss;font-size:10px;color:#800000;font­-weight:normal;text-decoration:none;top:58px;border:0px;}
a:hover.tree{font-family:Verdana,Arial,Helvetica,Swiss;font-size:10px;color:#B0B0B0;font-w­eight:normal;text-decoration:underline;border:0px;}
#texte1{position:absolute;left:30px;top:19px;z-index:3;}
.texte2{font-family:Verdana,Arial,Helvetica;font-size:10px;color:#430706;font-weight:norma­l;text-decoration:none;z-index:3;}
.texte3{font-family:Verdana,Arial,Helvetica;font-size:11px;color:#430706;font-weight:norma­l;text-decoration:none;z-index:3;}
#newsletter{position:absolute;left:360px;top:-10px;z-index:3;}
</style>

<script language="javascript" type="text/javascript">
function validation()
{

var email = document.formulaire.email.value;
if (email.search(/^[_a-z0-9-]+(.[_a-z0-9-]+)*[^._-]@[a-z0-9-]+(.[a-z0-9]{2,4})*$/) == -1)
{
alert ('entrez une adresse Email valide');
document.formulaire.email.focus();
return false;
}
if(document.formulaire.Nom.value == "")
{
alert ('veuillez entrer votre Nom');
document.formulaire.Nom.focus();
return false;
}

if(document.formulaire.PreNom.value == "")
{
alert ('veuillez entrer votre PreNom');
document.formulaire.PreNom.focus();
return false;
}

if(document.formulaire.Choix.value == "")
{
alert ('veuillez entrer un Choix');
document.formulaire.Choix.focus();
return false;
}
if(document.formulaire.commentaire.value == "")
{
alert ('veuillez entrer un commentaire Obligatoire');
document.formulaire.commentaire.focus();
return false;
}

else
sujetoption = -1
for (i=0; i<formulaire.sujet.length; i++)
{
if(document.formulaire.sujet[i].checked){
sujetoption = i
}
}
if (sujetoption == -1) {
alert("Veuillez choisir un sujet pour votre mail svp");
return false;
}


else {return true;}
}
</script>
</head>

<body>


<form action="traitement.php" method="post" name="formulaire" onsubmit="return validation();">
<form name='formulaire' action='http://www.monsite/pages/traitement.php' method='post' target="pages">
<table>
<th><br><i><font color="#800000"><i><font color="#800000">Formulaire de commande</i></font><br>
<br>
<img src="../images/bouquets/big-pic1.jpg" width="200" height="200" border="0" usemap="#fiche-pic1"></b> <br> <b>Bouquet passion</b></p></td></th>


<tr><td class="texte2">Votre nom :</td>
<td class="texte2"><input type="text" name="Nom" size="15"><br></td></tr>
<tr><td class="texte2">Votre prénom :</td>
<td class="texte2"><input type="text" name="PreNom" size="15"><br></td></tr>
<tr><td class="texte2">Votre Choix :</td>
<td class="texte2"><input type="text" name="Choix" size="15"><br></td></tr>
<tr><td class="texte2">Votre Votre e-mail :</td>
<td class="texte2"><input type="text" name="email" size="15"><br></td></tr>
<tr><td class="texte2">Votre prix</td>
<td class="texte2"><input name='sujet' type='radio' value='renseignement'>pour 20,00 €ur<br>
<input name='sujet' type='radio' value='probleme technique'>pour 30,00 €ur<br>
<input name='sujet' type='radio' value='partenariat'>pour 40,00 €ur</td></tr>

<tr><td class="texte2">Votre adresse : </td>
<td class="texte2"><textarea name="commentaire" cols="25" rows="7"></textarea>
<br><input type="submit" name="envois" value="Envoyer">
<input type="reset" value="Effacer" ></td></tr>

</table>
</body>
</html>


Voici ma page php :

<html>

<body>

<?php
$adresse="info@monsite.be";
$from="From: $prenom $nom<$email>\r\n";
$from.="Reply-To: $prenom $nom <$email>\n";
$from.="X-priority:3\n";
$texte="<html>";
$texte.="$texte";
$texte.="</html>";
$from.="MIME-Version: 1.0\r\n";
$from.="Content-Type: text/html";
if (mail($adresse,$sujet,$texte,$from))
echo("<center><font color=green><br><br><br><h2>Formulaire envoyé ! votre commande sera exécuté rapidement. Merci!</h2></font>");
?>

</body>

</html>


Si quelqu'un veut bien me donner un petit coup de pouce se serait vraiment sympa :-)
A voir également:

4 réponses

Tiller Messages postés 781 Date d'inscription mercredi 4 juillet 2007 Statut Membre Dernière intervention 14 septembre 2008 210
11 juin 2008 à 20:38
C'est normal qu'il n'y ai rien dans ton corps:
$texte="<html>";
$texte.="$texte";
$texte.="</html>"; 


En gros, tu met dans la variable $texte '<html>' ensuite, tu rajoutes a la fin de la variable la meme variable donc $texte a pour valeur '<html><html>' ensuite tu met </html> donc
'<html><html></html>';
Y'a rien a affiché la dedans, tu definis ni texte ni rien ;o
0
jery_jery2006 Messages postés 5 Date d'inscription mercredi 11 juin 2008 Statut Membre Dernière intervention 11 juin 2008
11 juin 2008 à 20:52
Bonsoir Tiler,

Je te remercie pour ta remarque, je comprend ce que tu veux me dire, ...
mais ce n'est pas encore très simple pour moi ... je débute désole ...

Ne veux tu pas me donner le coding exacte à utiliser.
Je vais pouvoir ainsi essayer de le modifier pour l'adapter aux champs de mes formulaires.

Un grand merci d'avance

Jery
0
Tiller Messages postés 781 Date d'inscription mercredi 4 juillet 2007 Statut Membre Dernière intervention 14 septembre 2008 210
11 juin 2008 à 20:58
Explique moi deja se que tu aimerais qui apparaisse dans le corps du mail ;o
0
jery_jery2006 Messages postés 5 Date d'inscription mercredi 11 juin 2008 Statut Membre Dernière intervention 11 juin 2008
11 juin 2008 à 21:06
Merci pour ta réponse

J'aimerai donc que tous les champs demandés dans le formulaire cad : Votre nom , Votre prénom, Votre Choix, Votre Votre e-mail, Votre prix , Votre adresse , ... ) soit donc envoyé clairement dans l' e-mail.

Pour cela j'ai donc créer le formulaire (formulaire2.htm)
avec un JavaScript pour vérifier si les champs sont bien complétés
en envoyé vers une page php (traitement.php) qui donne un message de confirmation de l'envoye
et qui doit transmettre les données vers mon e-mail.

Voila ce que je recherche.

merci à toi
0
Tiller Messages postés 781 Date d'inscription mercredi 4 juillet 2007 Statut Membre Dernière intervention 14 septembre 2008 210
11 juin 2008 à 21:18
$texte = '<html>'.$_POST['Nom'].''.$_POST['PreNom'].''.$_POST['Choix'].''.$_POST['email'].''.$_POST['sujet'].''.$_POST['commentaire'].'</html>';

Ensuite tu te fais le message que tu veux (les variables marchent avec '.$_POST['..'].', exemple:
$texte = '<html>Bonjour '.$_POST['Nom'].' '.$_POST['PreNom'].'<br/><br/>Vous avez donc choisi: '.$_POST['Choix'].'<br/>Je vous confirme que votre email est: '.$_POST['email'].'<br/>Et donc vous nous ecrivez pour: '.$_POST['sujet'].'<br/><br/>Vous avez souhaité laissé comme message: '.$_POST['commentaire'].'</html>';
0
jery_jery2006 Messages postés 5 Date d'inscription mercredi 11 juin 2008 Statut Membre Dernière intervention 11 juin 2008
11 juin 2008 à 21:34
Je te remercie de tes precieux conseils ! !

Je viens de tester avec tes modifications et cela marche super bien ! ! !

Un très très grand merci
Je vais pouvoir enfin continuer ma progression dans mon formulaire
... et ce grace à toi !

Et si j'ai encore besoin d'aide, je sais qui peux me donner un petit coup de pouce ! :-)

Je te souhaite une excellente soirée

Jery
0