Page 1 sur 1
Probleme e-Mail forulaire php
Posté : 07 août 2008, 18:14
par buntafuji
Salut à tous, je suis débutant en PHP.
Dabord je voudrais savoir quelle scprit faut il pour envoyer un formulaire sans pas par Outlook ?
Et ensuite faut-il mettre le code PHP avec la page HTML de mon formulaire où mettre le code dans une page en PHP ?
En espèrent avoir été clair.
Merci d'avance.
Posté : 07 août 2008, 18:50
par dogmongo
bonjour
pour le formulaire PHP ou HTML au choix =>qui va a page traitement en PHP obligatoire pou r utiliser la fonction mail()

Posté : 07 août 2008, 19:06
par buntafuji
Ok
Donc le code mail() doit être dans une page séparé de celle du formulaire donc ?
Tu pourrai me donné un script comme il faut stp ?
Posté : 07 août 2008, 19:11
par dunbar
Ok
Donc le code mail() doit être dans une page séparé de celle du formulaire donc ?
Tu pourrai me donné un script comme il faut stp ?
Un petit truc :
Imagine un modérateur qui passerait par ici à tout les coup il te dirais que le site ne donne pas de script tout fait.
Par contre il est possible d'avoir des liens à défaut de les chercher soi-même 
Posté : 07 août 2008, 19:54
par buntafuji
Excuser moi je ne savais pas...
[Note : ce message a été posté de manière anonyme avant d'être réattribué à son auteur]
Posté : 08 août 2008, 19:30
par buntafuji
Re salut, voila avec ce script je reçoit un eMail mais vide, que faut-il corrigé ?
Merci d'avance
<?php
$email_dest = "[email protected]";
if ($_POST['envoi']) {
$message_remerciement = "Merci, nous vous répondrons le plus rapidement possible";
// E-mail headers:
$headers ="MIME-Version: 1.0 \n";
$headers .="From: [email protected] \n";
$headers .="Content-Type: text/html; charset=iso-8859-1 \n";
$subject = "Sujet de votre formulaire";
$partie_entete = "<html><head>
<meta http-equiv=Content-Type content=text/html; charset=iso-8859-1>
</head>
<body bgcolor=#FFFFFF>";
for ($a=1; $a<= $_POST['nbre_champs_texte']; $a++) {
$partie_champs_texte .= "<font face='Verdana' size='2' color='#003366'>" . $_POST['titre_champ'.$a] . " = " . $_POST['Nom'.$a] . "</font><br>";
}
if ($_POST['nbre_zone_email'] != 0) {
$partie_zone_email = "<font face='Verdana' size='2' color='#003366'>" . $_POST['titre_email'] . " = " . $_POST['zone_email'] . "</font><br>";
}
if ($_POST['nbre_zones_texte'] != 0) {
$partie_zone_texte = "<font face='Verdana' size='2' color='#003366'>" . $_POST['titre_zone'] . " = " . $_POST['zone_texte'] . "</font><br>";
$partie_zone_texte = stripslashes($partie_zone_texte);
}
$fin = "</body></html>";
$sortie = $partie_entete . $partie_champs_texte . $partie_zone_email . $partie_zone_texte . $fin;
// Send the e-mail
if (@!mail($email_dest,$subject,$sortie,$headers)) {
echo("Envoi du formulaire impossible");
} // Closing if !mail...
} // Closing if edit
?><html>
<head>
<title>Assistant d'envoi de formulaires</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript"><!-- Hide script from older browsers
function verifSelection() {if (mail_form.zone_email.value == "") {
alert("Vous n\'avez pas inscrit d\'add mail ...")
return false
}
invalidChars = " /:,;'"
for (i=0; i<invalidChars.length; i++) { // does it contain any invalid characters?
badChar = invalidChars.charAt(i)
if (mail_form.zone_email.value.indexOf(badChar,0) > -1) {
alert("Votre adresse e-mail contient des caractères invalides. Veuillez vérifier.")
mail_form.zone_email.focus()
return false
}
}
atPos = mail_form.zone_email.value.indexOf("@",1) // there must be one "@" symbol
if (atPos == -1) {
alert('Votre adresse e-mail ne contient pas le signe "@". Veuillez vérifier.')
mail_form.zone_email.focus()
return false
}
if (mail_form.zone_email.value.indexOf("@",atPos+1) != -1) { // and only one "@" symbol
alert('Il ne doit y avoir qu\'un signe "@". Veuillez vérifier.')
mail_form.zone_email.focus()
return false
}
periodPos = mail_form.zone_email.value.indexOf(".",atPos)
if (periodPos == -1) { // and at least one "." after the "@"
alert('Vous avez oublié le point "." après le signe "@". Veuillez vérifier.')
mail_form.zone_email.focus()
return false
}
if (periodPos+3 > mail_form.zone_email.value.length) { // must be at least 2 characters after the
alert('Il doit y avoir au moins deux caractères après le signe ".". Veuillez vérifier.')
mail_form.zone_email.focus()
return false
}} // Fin de la fonction
</script>
</head>
<body>
<form name="mail_form" method="post" action="<?=$PHP_SELF?>" onSubmit="return verifSelection()">
<div align="center"></div>
<p align="center">
<?php
if ($message_remerciement) {
echo("<font face=Verdana size=2>");
echo(stripslashes($message_remerciement));
echo("</p></body></html>");
exit();
}
?>
<form id="form1" name="form1" method="post" action="">
Nom :
<label>
<input type="text" name="Nom" id="Nom" />
</label>
<p>Pénom :
<label>
<input type="text" name="Prénom" id="Prénom" />
</label>
</p>
<p>Marque du véhicule :
<label>
<input type="text" name="Marque du véhicule" id="Marque du véhicule" />
</label>
</p>
<p>Modèle :
<label>
<input type="text" name="Modèle" id="Modèle" />
</label>
</p>
<p>Energie :
<label>
<select name="select" id="select">
<option selected="selected">Diesel</option>
<option>Essence</option>
<option>Hybride</option>
<option>Electrique</option>
<option>GPL</option>
</select>
</label>
</p>
<p>Posibillté de rendez-vous : </p>
<p>1. Le
<label>
<select name="select2" id="select2">
<option>01</option>
<option>02</option>
<option>03</option>
<option>04</option>
<option>05</option>
<option>06</option>
<option>07</option>
<option>08</option>
<option>09</option>
<option>10</option>
<option>11</option>
<option>12</option>
<option>13</option>
<option>14</option>
<option>15</option>
<option>16</option>
<option>17</option>
<option>18</option>
<option>19</option>
<option>20</option>
<option>21</option>
<option>22</option>
<option>23</option>
<option>24</option>
<option>25</option>
<option>26</option>
<option>27</option>
<option>28</option>
<option>29</option>
<option>30</option>
<option>31</option>
</select>
</label>
/
<label>
<select name="select3" id="select3">
<option>Janvier</option>
<option>Février</option>
<option>Mars</option>
<option>Avril</option>
<option>Mai</option>
<option>Juin</option>
<option>Juillet</option>
<option>Août</option>
<option>Septembre</option>
<option>Octobre</option>
<option>Novembre</option>
<option>Décembre</option>
</select>
</label>
/
<label>
<select name="select4" id="select4">
<option>2008</option>
<option>2009</option>
</select>
</label>
A
<label>
<select name="select5" id="select5">
<option>08</option>
<option>09</option>
<option>10</option>
<option>11</option>
<option>12</option>
<option>13</option>
<option>14</option>
<option>15</option>
<option>16</option>
<option>17</option>
</select>
</label>
H
<label>
<select name="select6" id="select6">
<option>00</option>
<option>30</option>
</select>
</label>
</p>
<p>2. Le
<label>
<select name="select7" id="select7">
<option>01</option>
<option>02</option>
<option>03</option>
<option>04</option>
<option>05</option>
<option>06</option>
<option>07</option>
<option>08</option>
<option>09</option>
<option>10</option>
<option>11</option>
<option>12</option>
<option>13</option>
<option>14</option>
<option>15</option>
<option>16</option>
<option>17</option>
<option>18</option>
<option>19</option>
<option>20</option>
<option>21</option>
<option>22</option>
<option>23</option>
<option>24</option>
<option>25</option>
<option>26</option>
<option>27</option>
<option>28</option>
<option>29</option>
<option>30</option>
<option>31</option>
</select>
</label>
/
<label>
<select name="select9" id="select8">
<option>Janvier</option>
<option>Février</option>
<option>Mars</option>
<option>Avril</option>
<option>Mai</option>
<option>Juin</option>
<option>Juillet</option>
<option>Août</option>
<option>Septembre</option>
<option>Octobre</option>
<option>Novembre</option>
<option>Décembre</option>
</select>
</label>
/
<label>
<select name="select7" id="select9">
<option>2008</option>
<option>2009</option>
</select>
</label>
A
<label>
<select name="select7" id="select10">
<option>08</option>
<option>09</option>
<option>10</option>
<option>11</option>
<option>12</option>
<option>13</option>
<option>14</option>
<option>15</option>
<option>16</option>
<option>17</option>
</select>
</label>
H
<label>
<select name="select7" id="select11">
<option>00</option>
<option>30</option>
</select>
</label>
</p>
<p>3. Le
<label>
<select name="select8" id="select12">
<option>01</option>
<option>02</option>
<option>03</option>
<option>04</option>
<option>05</option>
<option>06</option>
<option>07</option>
<option>08</option>
<option>09</option>
<option>10</option>
<option>11</option>
<option>12</option>
<option>13</option>
<option>14</option>
<option>15</option>
<option>16</option>
<option>17</option>
<option>18</option>
<option>19</option>
<option>20</option>
<option>21</option>
<option>22</option>
<option>23</option>
<option>24</option>
<option>25</option>
<option>26</option>
<option>27</option>
<option>28</option>
<option>29</option>
<option>30</option>
<option>31</option>
</select>
</label>
/
<label>
<select name="select10" id="select13">
<option>Janvier</option>
<option>Février</option>
<option>Mars</option>
<option>Avril</option>
<option>Mai</option>
<option>Juin</option>
<option>Juillet</option>
<option>Août</option>
<option>Septembre</option>
<option>Octobre</option>
<option>Novembre</option>
<option>Décembre</option>
</select>
</label>
/
<label>
<select name="select8" id="select14">
<option>2008</option>
<option>2009</option>
</select>
</label>
A
<label>
<select name="select8" id="select15">
<option>08</option>
<option>09</option>
<option>10</option>
<option>11</option>
<option>12</option>
<option>13</option>
<option>14</option>
<option>15</option>
<option>16</option>
<option>17</option>
</select>
</label>
H
<label>
<select name="select8" id="select16">
<option>00</option>
<option>30</option>
</select>
</label>
</p>
<p> </p>
<p>Email
<label>
<input name="textfield" type="text" id="textfield" />
</label>
</p>
<p> </p>
<p>
<label></label>
</p>
<p align="center">
<input type="reset" name="Reset" value="Effacer">
<input type="submit" name="envoi" value="Envoyer">
<label></label>
</p>
<p align="center"> </p>
<p> </p>
<p> </p>
<label></label>
</form>
</body>
</html>
[/php]
Posté : 09 août 2008, 09:47
par zeus
Modération :
buntafuji, merci d'utiliser un titre clair et qui correspond bien à ta demande.
Les titres contenant "HELP !", "Aidez-moi", "J'ai un problème", "Ça marche pas",...
n'apportent rien à la compréhension de ta demande.
Par ailleurs, nous savons déjà par ton message que tu as besoin d'aide.
Tu peux corriger ton titre en éditant ton premier message.
Merci de prendre le temps de lire les règlements.
Posté : 09 août 2008, 11:42
par dogmongo
$headers .= "From:<[email protected]>\n";
Posté : 09 août 2008, 13:02
par buntafuji
Que veut tu dire par la?
Je pense pas que ça vienne des adresse e-Mail.
Cars j'ai juste adapté le script en y maitant mon formulaire mais je recoi un e-Mail vide
Posté : 10 août 2008, 13:25
par dogmongo
pourquoi tu ne mets pas les < >
$headers .= "From:<$webmaster>\n";
$headers .= "X-Sender: <$destinataire>\n";
$headers .= "X-Mailer: PHP\n";
$headers .= "X-Priority: 1\n"; // priorité du mail 1,2 ou 3
$headers .= "Return-Path: <$destinataire> \n"; // Chemin de retour pour les erreurs
$headers .= "Content-Type: text/html; charset=iso-8859-1\n";
Philippe
Posté : 12 août 2008, 11:10
par buntafuji
Je reçoit toujours un e-mail vide.
Posté : 12 août 2008, 16:50
par dogmongo
montre nous ton code en entier on pourra mieux t'aider
autant pour moi , j'ai pas regardé plus haut
Posté : 12 août 2008, 17:57
par dogmongo
pour commencer j ete recommande de bien nomer tes champs formulaires ensuite j'aurai déclarer la première ligne de
partie_champs_texte
$partie_champs_texte = "";
Mon deuxième conseil serait de tester ton scripts sans conditions javascripts ni condition variable existante
Isset .
ensuite une fois que tu recois tout correctement tu insert tes conditions
nbre_champs_texte c'est quoi ?, je ne la vois pas dans le formulaire?