Parse error en php
Résolu
emarie3680
Messages postés
131
Date d'inscription
Statut
Membre
Dernière intervention
-
emarie3680 Messages postés 131 Date d'inscription Statut Membre Dernière intervention -
emarie3680 Messages postés 131 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je suis un énorme débutant en php. J'ai fait un formulaire tout bête en htlm ainsi que le php correspondant à son traitement et qui permet de recevoir les données saisies dans ma boite mail.
J'ai un problème avec le php et il doit être énorme et facile à voir pour les initiés. Voici mon php :
<?php
if($_POST){
$nom = $_POST['nom'];
$prenom = $_POST['prenom'];
if(empty($erreurs)) {
$to = "test@yahoo.fr";
$contenu = "message de : ".$prenom." ".$nom;
$resultat = mail($to, $subject, $contenu, $reply);
if($resultat) {
echo "email envoyé";
} else {
echo "échec";
}
}
?>
Une fois mon formulaire validé, j'ai le message d'erreur suivant :
Parse error: syntax error, unexpected $end in /home/b/testquest/html/traitementest.php on line 15.
J'ai merdé à la dernière ligne !!! C'est quoi qui va pas ???
Merci pour vos réponses
Éric
Je suis un énorme débutant en php. J'ai fait un formulaire tout bête en htlm ainsi que le php correspondant à son traitement et qui permet de recevoir les données saisies dans ma boite mail.
J'ai un problème avec le php et il doit être énorme et facile à voir pour les initiés. Voici mon php :
<?php
if($_POST){
$nom = $_POST['nom'];
$prenom = $_POST['prenom'];
if(empty($erreurs)) {
$to = "test@yahoo.fr";
$contenu = "message de : ".$prenom." ".$nom;
$resultat = mail($to, $subject, $contenu, $reply);
if($resultat) {
echo "email envoyé";
} else {
echo "échec";
}
}
?>
Une fois mon formulaire validé, j'ai le message d'erreur suivant :
Parse error: syntax error, unexpected $end in /home/b/testquest/html/traitementest.php on line 15.
J'ai merdé à la dernière ligne !!! C'est quoi qui va pas ???
Merci pour vos réponses
Éric
A voir également:
- Parse error en php
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Cmos checksum error ✓ - Forum Carte-mère/mémoire
- Playback error reconnect in 3s (1/5) francais - Forum Box et Streaming vidéo
- Error 1962 ✓ - Forum PC fixe
45 réponses
Bon, mon formulaire évolue ... MAIS avec chaque évolution il y a de nouveaux écueils...
Voilà à quoi ressemble le fichier de traitement :
<?php
if($_POST)
{
$fille = $_POST['fille'];
$garcon = $_POST['garcon'];
$Age = $_POST['Age'];
$collegien = $_POST['collegien'];
$lyceen = $_POST['lyceen'];
$etudiant = $_POST['etudiant'];
$formation = $_POST['formation'];
$demploi = $_POST['demploi'];
$salarie = $_POST['salarie'];
$autressitu = $_POST['autressitu'];
$SituationAutre = $_POST['SituationAutre'];
$Ville = $_POST['Ville'];
$centresinteret = $_POST['centresinteret'];
if(isset($_POST['fille']))
{
$fille = htmlentities($_POST['fille']);
}
if(isset($_POST['garcon']))
{
$garcon = htmlentities($_POST['garcon']);
}
if(empty($erreurs))
{
$to = "test@yahoo.fr";
$contenu = ".$fille;
$contenu .= ".$garcon;
$resultat = mail($to,$subject,$contenu,$reply);
}
if($resultat)
{
echo "email envoyé avec succès";
}
else
{
echo "échec envoi du mail vérifiez les données entrées";
}
}
?>
Je voudrais savoir s'il y a moyen d'éviter de "déclarer" chaque champ de formulaire ($fille = $_POST......) comme j'ai fait au début. N'y a-t-il pas un traitement "par lot" ?
De la même façon, y-a-t-il un moyen d'envoyer d'un coup par mail toutes les infos saisies dans mon formulaire (que ce soit dans un champ texte ou par bouton radio) et d'avoir à utiliser 50 fois if ... isset ... htmlentities ou plus bas $contenu.
J'ai vu la fonction foreach, mais je ne sais pas si elle est applicable là ... et ce que cela pourrait donner ...
Merci d'avance,
Éric
Voilà à quoi ressemble le fichier de traitement :
<?php
if($_POST)
{
$fille = $_POST['fille'];
$garcon = $_POST['garcon'];
$Age = $_POST['Age'];
$collegien = $_POST['collegien'];
$lyceen = $_POST['lyceen'];
$etudiant = $_POST['etudiant'];
$formation = $_POST['formation'];
$demploi = $_POST['demploi'];
$salarie = $_POST['salarie'];
$autressitu = $_POST['autressitu'];
$SituationAutre = $_POST['SituationAutre'];
$Ville = $_POST['Ville'];
$centresinteret = $_POST['centresinteret'];
if(isset($_POST['fille']))
{
$fille = htmlentities($_POST['fille']);
}
if(isset($_POST['garcon']))
{
$garcon = htmlentities($_POST['garcon']);
}
if(empty($erreurs))
{
$to = "test@yahoo.fr";
$contenu = ".$fille;
$contenu .= ".$garcon;
$resultat = mail($to,$subject,$contenu,$reply);
}
if($resultat)
{
echo "email envoyé avec succès";
}
else
{
echo "échec envoi du mail vérifiez les données entrées";
}
}
?>
Je voudrais savoir s'il y a moyen d'éviter de "déclarer" chaque champ de formulaire ($fille = $_POST......) comme j'ai fait au début. N'y a-t-il pas un traitement "par lot" ?
De la même façon, y-a-t-il un moyen d'envoyer d'un coup par mail toutes les infos saisies dans mon formulaire (que ce soit dans un champ texte ou par bouton radio) et d'avoir à utiliser 50 fois if ... isset ... htmlentities ou plus bas $contenu.
J'ai vu la fonction foreach, mais je ne sais pas si elle est applicable là ... et ce que cela pourrait donner ...
Merci d'avance,
Éric
Bien sure que c'est applicable, j'aideja donné un exemple:
http://www.commentcamarche.net/forum/affich 8386263 php move uploaded file?page=2#29
Post numero 29
Essaies d'appliquer ça sinon, je suis toujours la pour vous chers internautes
http://www.commentcamarche.net/forum/affich 8386263 php move uploaded file?page=2#29
Post numero 29
Essaies d'appliquer ça sinon, je suis toujours la pour vous chers internautes
Alors le foreach:
Prenons un tableau qui contient une 50ène d'email que l'on nomme tadam :
$tab_email;
foreach ($tab_email AS $email)
{
echo $email;
envoyer 'salut' à l'email $email;
}
Ben, dans le tableau $tab_email, on attribut à la case une, puis la case deux, puis la case trois etc le nom de $email grâce au AS et pour chaque $email on exécute chaque instruction. C'est magique pour les tableaux pas besoin de faire un count puis de faire un while avec le compte $i etc etc le foreach parcoure le tableau c'est méga bien
Prenons un tableau qui contient une 50ène d'email que l'on nomme tadam :
$tab_email;
foreach ($tab_email AS $email)
{
echo $email;
envoyer 'salut' à l'email $email;
}
Ben, dans le tableau $tab_email, on attribut à la case une, puis la case deux, puis la case trois etc le nom de $email grâce au AS et pour chaque $email on exécute chaque instruction. C'est magique pour les tableaux pas besoin de faire un count puis de faire un while avec le compte $i etc etc le foreach parcoure le tableau c'est méga bien
Mais biens sure les noms des champs dans le formulaire doivent correspondre aux noms de champs dans le tableau $_POST
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Merci pour vos réponses, briiiix et azerwhite.
Dans mon cas, à la place de :
$fille = $_POST['fille'];
$garcon = $_POST['garcon'];
$Age = $_POST['Age'];
$collegien = $_POST['collegien'];
$lyceen = $_POST['lyceen'];
$etudiant = $_POST['etudiant'];
$formation = $_POST['formation'];
......
il faudrait que je marque une instruction du genre :
<?php
if($_POST)
{
foreach ($POST as ???)
{
????
}
if(isset($_POST['fille']))
je vois pas !!!
Et, briiiix, dans une de vos réponses, vous m'aviez indiqué la concaténation pour les lignes $contenu = et ensuite $contenu .=
J'ai voulu rajouter $contenu ..= "$... pour le champ suivant (Age), mais j'avais une parse error. Est-ce que la concaténation ne fonctionne que deux fois ?
Dans mon cas, à la place de :
$fille = $_POST['fille'];
$garcon = $_POST['garcon'];
$Age = $_POST['Age'];
$collegien = $_POST['collegien'];
$lyceen = $_POST['lyceen'];
$etudiant = $_POST['etudiant'];
$formation = $_POST['formation'];
......
il faudrait que je marque une instruction du genre :
<?php
if($_POST)
{
foreach ($POST as ???)
{
????
}
if(isset($_POST['fille']))
je vois pas !!!
Et, briiiix, dans une de vos réponses, vous m'aviez indiqué la concaténation pour les lignes $contenu = et ensuite $contenu .=
J'ai voulu rajouter $contenu ..= "$... pour le champ suivant (Age), mais j'avais une parse error. Est-ce que la concaténation ne fonctionne que deux fois ?
Le principe est très simple, si tes champs dans e formulaires sont nommés ainsi:
<input type="text" name="entree_1" >
<input type="text" name="entree_2" >
etc ...
donc le code php generique doit être:
$champs_a_inserer = array (); //declaration du tableau qui va contenir les POST
$i=0; //Initialisation du compteur
foreach($_POST as $champ) //Debut de la boucle
{
$i++; //Incrementation du compteur
$champs_a_inserer[$i] = $_POST["entree_".$i]; //Stochage des POST
}
Voila comment ca marche
<input type="text" name="entree_1" >
<input type="text" name="entree_2" >
etc ...
donc le code php generique doit être:
$champs_a_inserer = array (); //declaration du tableau qui va contenir les POST
$i=0; //Initialisation du compteur
foreach($_POST as $champ) //Debut de la boucle
{
$i++; //Incrementation du compteur
$champs_a_inserer[$i] = $_POST["entree_".$i]; //Stochage des POST
}
Voila comment ca marche
Oh lala !
J'ai essayé ça :
<?php
if($_POST)
{
//$fille = $_POST['fille'];
//$garcon = $_POST['garcon'];
//$Age = $_POST['Age'];
//$collegien = $_POST['collegien'];
//$lyceen = $_POST['lyceen'];
//$etudiant = $_POST['etudiant'];
//$formation = $_POST['formation'];
//$demploi = $_POST['demploi'];
//$salarie = $_POST['salarie'];
//$autressitu = $_POST['autressitu'];
//$SituationAutre = $_POST['SituationAutre'];
//$Ville = $_POST['Ville'];
//$centresinteret = $_POST['centresinteret'];
$name = array();
$i=0;
foreach($_POST as $name)
{
$i++;
$name[$i] = $_POST["name_".$i];
}
if(isset($_POST['fille']))
{
$fille = htmlentities($_POST['fille']);
}
if(isset($_POST['garcon']))
{
$garcon = htmlentities($_POST['garcon']);
}
if(empty($erreurs))
{
$to = "test@yahoo.fr";
$contenu = ".$fille;
$contenu .= ".$garcon;
$resultat = mail($to,$subject,$contenu,$reply);
}
if($resultat)
{
echo "email envoyé avec succès";
}
else
{
echo "échec envoi du mail vérifiez les données entrées";
}
}
?>
et il me renvoie "échec du mail, vérifiez les données". Help ! Il faut que je complète au niveau de if(isset ... et des lignes "$contenu ... ?
Merci d'avance
J'ai essayé ça :
<?php
if($_POST)
{
//$fille = $_POST['fille'];
//$garcon = $_POST['garcon'];
//$Age = $_POST['Age'];
//$collegien = $_POST['collegien'];
//$lyceen = $_POST['lyceen'];
//$etudiant = $_POST['etudiant'];
//$formation = $_POST['formation'];
//$demploi = $_POST['demploi'];
//$salarie = $_POST['salarie'];
//$autressitu = $_POST['autressitu'];
//$SituationAutre = $_POST['SituationAutre'];
//$Ville = $_POST['Ville'];
//$centresinteret = $_POST['centresinteret'];
$name = array();
$i=0;
foreach($_POST as $name)
{
$i++;
$name[$i] = $_POST["name_".$i];
}
if(isset($_POST['fille']))
{
$fille = htmlentities($_POST['fille']);
}
if(isset($_POST['garcon']))
{
$garcon = htmlentities($_POST['garcon']);
}
if(empty($erreurs))
{
$to = "test@yahoo.fr";
$contenu = ".$fille;
$contenu .= ".$garcon;
$resultat = mail($to,$subject,$contenu,$reply);
}
if($resultat)
{
echo "email envoyé avec succès";
}
else
{
echo "échec envoi du mail vérifiez les données entrées";
}
}
?>
et il me renvoie "échec du mail, vérifiez les données". Help ! Il faut que je complète au niveau de if(isset ... et des lignes "$contenu ... ?
Merci d'avance
C'est clair que t'as pas compris l'utilité de la boucle que je t'ai créé, fais voir ton code html aussi et je vais voir ce que je pourrais faire pour resoudre ce problème
OK, je suis désolé ...
Voici mon code html :
<html>
<head>
<title>Questionnaire</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript">
<!--
function MM_findObj(n, d) { //v4.0
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && document.getElementById) x=document.getElementById(n); return x;
}
function MM_validateForm() { //v4.0
var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
if (val) { nm=val.name; if ((val=val.value)!="") {
if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';
} else if (test!='R') {
if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
min=test.substring(8,p); max=test.substring(p+1);
if (val<min || max<val) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
} } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }
} if (errors) alert('The following error(s) occurred:\n'+errors);
document.MM_returnValue = (errors == '');
}
//-->
</script>
</head>
<body bgcolor="#FFCC66" text="#000000">
<p> </p>
<table width="75%" border="1">
<tr>
<td bordercolor="#3333CC" height="47">
<div align="center"><font size="+2"><b>QUESTIONNAIRE
!</b></font></div>
</td>
</tr>
</table>
<form action="Traitement_Quest.php" method="post">
<p>Tu es : </p>
<table width="23%" border="0">
<tr>
<td width="12%">
<input type="radio" name="fille" value="fille">
</td>
<td width="36%">Fille</td>
<td width="15%">
<input type="radio" name="garcon" value="garcon">
</td>
<td width="37%">Garçon</td>
</tr>
</table>
<p>Tu as :
<input type="text" name="Age" size="8">
ans</p>
<p>Tu es :</p>
<table width="85%" border="0">
<tr>
<td width="3%">
<input type="radio" name="collegien" value="collegien">
</td>
<td width="11%">Collégien</td>
<td width="4%"> </td>
<td width="5%">
<input type="radio" name="lyceen" value="lyceen">
</td>
<td width="8%">Lycéen</td>
<td width="5%"> </td>
<td width="4%">
<input type="radio" name="etudiant" value="etudiant">
</td>
<td width="8%">Étudiant</td>
<td width="4%"> </td>
<td width="4%">
<input type="radio" name="formation" value="formation">
</td>
<td width="44%">En formation</td>
</tr>
<tr>
<td width="3%">
<input type="radio" name="demploi" value="demploi">
</td>
<td width="11%">Demandeur d'emploi</td>
<td width="4%"> </td>
<td width="5%">
<input type="radio" name="salarie" value="salarie">
</td>
<td width="8%">Salarié</td>
<td width="5%"> </td>
<td colspan="5"> Autres Préciser :
<input type="text" name="SituationAutre">
</td>
</tr>
</table>
<p>Quelle est ta ville ? :
<input type="text" name="Ville">
</p>
<p>Comment te déplaces-tu ? :
<input type="text" name="deplacement">
</p>
<p>Quels sont tes centres d'intérêt ?
<input type="text" name="centresinteret">
</p>
<p>
<input type="submit" name="Submit" value="Envoyer" onClick="MM_validateForm('textfield','','R','textfield2','','R','textfield3','','R');return document.MM_returnValue">
<input type="reset" name="Submit2" value="Rétablir">
</p>
</form>
<p> </p>
</body>
</html>
Voilà voilà ... J'espère que tu verras mieux où je veux en venir ...
Voici mon code html :
<html>
<head>
<title>Questionnaire</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript">
<!--
function MM_findObj(n, d) { //v4.0
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && document.getElementById) x=document.getElementById(n); return x;
}
function MM_validateForm() { //v4.0
var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
if (val) { nm=val.name; if ((val=val.value)!="") {
if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';
} else if (test!='R') {
if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
min=test.substring(8,p); max=test.substring(p+1);
if (val<min || max<val) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
} } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }
} if (errors) alert('The following error(s) occurred:\n'+errors);
document.MM_returnValue = (errors == '');
}
//-->
</script>
</head>
<body bgcolor="#FFCC66" text="#000000">
<p> </p>
<table width="75%" border="1">
<tr>
<td bordercolor="#3333CC" height="47">
<div align="center"><font size="+2"><b>QUESTIONNAIRE
!</b></font></div>
</td>
</tr>
</table>
<form action="Traitement_Quest.php" method="post">
<p>Tu es : </p>
<table width="23%" border="0">
<tr>
<td width="12%">
<input type="radio" name="fille" value="fille">
</td>
<td width="36%">Fille</td>
<td width="15%">
<input type="radio" name="garcon" value="garcon">
</td>
<td width="37%">Garçon</td>
</tr>
</table>
<p>Tu as :
<input type="text" name="Age" size="8">
ans</p>
<p>Tu es :</p>
<table width="85%" border="0">
<tr>
<td width="3%">
<input type="radio" name="collegien" value="collegien">
</td>
<td width="11%">Collégien</td>
<td width="4%"> </td>
<td width="5%">
<input type="radio" name="lyceen" value="lyceen">
</td>
<td width="8%">Lycéen</td>
<td width="5%"> </td>
<td width="4%">
<input type="radio" name="etudiant" value="etudiant">
</td>
<td width="8%">Étudiant</td>
<td width="4%"> </td>
<td width="4%">
<input type="radio" name="formation" value="formation">
</td>
<td width="44%">En formation</td>
</tr>
<tr>
<td width="3%">
<input type="radio" name="demploi" value="demploi">
</td>
<td width="11%">Demandeur d'emploi</td>
<td width="4%"> </td>
<td width="5%">
<input type="radio" name="salarie" value="salarie">
</td>
<td width="8%">Salarié</td>
<td width="5%"> </td>
<td colspan="5"> Autres Préciser :
<input type="text" name="SituationAutre">
</td>
</tr>
</table>
<p>Quelle est ta ville ? :
<input type="text" name="Ville">
</p>
<p>Comment te déplaces-tu ? :
<input type="text" name="deplacement">
</p>
<p>Quels sont tes centres d'intérêt ?
<input type="text" name="centresinteret">
</p>
<p>
<input type="submit" name="Submit" value="Envoyer" onClick="MM_validateForm('textfield','','R','textfield2','','R','textfield3','','R');return document.MM_returnValue">
<input type="reset" name="Submit2" value="Rétablir">
</p>
</form>
<p> </p>
</body>
</html>
Voilà voilà ... J'espère que tu verras mieux où je veux en venir ...
Je me suis permis de te créer un code qui fonctionne avec la boucle de POST
Je viens de le tester, ça fonctionne
<html>
<head>
<title>Questionnaire</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript">
<!--
function MM_findObj(n, d) { //v4.0
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && document.getElementById) x=document.getElementById(n); return x;
}
function MM_validateForm() { //v4.0
var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
if (val) { nm=val.name; if ((val=val.value)!="") {
if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';
} else if (test!='R') {
if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
min=test.substring(8,p); max=test.substring(p+1);
if (val<min || max<val) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
} } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }
} if (errors) alert('The following error(s) occurred:\n'+errors);
document.MM_returnValue = (errors == '');
}
//-->
</script>
</head>
<body bgcolor="#FFCC66" text="#000000">
<p> </p>
<table width="75%" border="1">
<tr>
<td bordercolor="#3333CC" height="47">
<div align="center"><font size="+2"><b>QUESTIONNAIRE
!</b></font></div>
</td>
</tr>
</table>
<form action="" method="post">
<p>Tu es : </p>
<table width="23%" border="0">
<tr>
<td width="12%">
<input type="radio" name="entree_1" value="fille" >
</td>
<td width="36%">Fille</td>
<td width="15%">
<input type="radio" name="entree_1" value="garcon">
</td>
<td width="37%">Garçon</td>
</tr>
</table>
<p>Tu as :
<input type="text" name="entree_2" size="8">
ans</p>
<p>Tu es :</p>
<table width="85%" border="0">
<tr>
<td width="3%">
<input type="radio" name="entree_3" value="collegien">
</td>
<td width="11%">Collégien</td>
<td width="4%"> </td>
<td width="5%">
<input type="radio" name="entree_3" value="lyceen">
</td>
<td width="8%">Lycéen</td>
<td width="5%"> </td>
<td width="4%">
<input type="radio" name="entree_3" value="etudiant">
</td>
<td width="8%">Étudiant</td>
<td width="4%"> </td>
<td width="4%">
<input type="radio" name="entree_3" value="formation">
</td>
<td width="44%">En formation</td>
</tr>
<tr>
<td width="3%">
<input type="radio" name="entree_4" value="demploi">
</td>
<td width="11%">Demandeur d'emploi</td>
<td width="4%"> </td>
<td width="5%">
<input type="radio" name="entree_4" value="salarie">
</td>
<td width="8%">Salarié</td>
<td width="5%"> </td>
<td colspan="5"> Autres Préciser :
<input type="text" name="entree_8">
</td>
</tr>
</table>
<p>Quelle est ta ville ? :
<input type="text" name="entree_5">
</p>
<p>Comment te déplaces-tu ? :
<input type="text" name="entree_6">
</p>
<p>Quels sont tes centres d'intérêt ?
<input type="text" name="entree_7">
</p>
<p>
<input type="submit" name="Submit" value="Envoyer" onClick="MM_validateForm('textfield','','R','textfield2','','R','textfield3','','R');return document.MM_returnValue">
<input type="reset" name="Submit2" value="Rétablir">
</p>
</form>
<?
$champs_a_inserer = array (); //declaration du tableau qui va contenir les POST
$i=0; //Initialisation du compteur
foreach($_POST as $champ) //Debut de la boucle
{
$i++; //Incrementation du compteur
$champs_a_inserer[$i] = htmlentities($_POST["entree_".$i]); //Stochage des POST
}
if ($_POST["entree_8"] != ''){$champs_a_inserer[4] = htmlentities($_POST['entree_8']);}
//Affichage de test
echo $champs_a_inserer[1]."<br>";
echo $champs_a_inserer[2]."<br>";
echo $champs_a_inserer[3]."<br>";
echo $champs_a_inserer[4]."<br>";
echo $champs_a_inserer[5]."<br>";
echo $champs_a_inserer[6]."<br>";
echo $champs_a_inserer[7]."<br>";
//Envoi de mail
$to = "test@yahoo.fr";
$subject = "Test envoi de mail";
$reply = "contact@domaine.com";
$contenu = .$champs_a_inserer[1]."<br>";
$contenu .= .$champs_a_inserer[2]."<br>";
$contenu .= .$champs_a_inserer[3]."<br>";
$contenu .= .$champs_a_inserer[4]."<br>";
$contenu .= .$champs_a_inserer[5]."<br>";
$contenu .= .$champs_a_inserer[6]."<br>";
$contenu .= .$champs_a_inserer[7]."<br>";
$resultat = mail($to,$subject,$contenu,$reply);
}
if($resultat)
{
echo "email envoyé avec succès";
}
else
{
echo "échec envoi du mail vérifiez les données entrées";
}
?>
</body>
</html>
Je viens de le tester, ça fonctionne
<html>
<head>
<title>Questionnaire</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript">
<!--
function MM_findObj(n, d) { //v4.0
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && document.getElementById) x=document.getElementById(n); return x;
}
function MM_validateForm() { //v4.0
var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
if (val) { nm=val.name; if ((val=val.value)!="") {
if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';
} else if (test!='R') {
if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
min=test.substring(8,p); max=test.substring(p+1);
if (val<min || max<val) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
} } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }
} if (errors) alert('The following error(s) occurred:\n'+errors);
document.MM_returnValue = (errors == '');
}
//-->
</script>
</head>
<body bgcolor="#FFCC66" text="#000000">
<p> </p>
<table width="75%" border="1">
<tr>
<td bordercolor="#3333CC" height="47">
<div align="center"><font size="+2"><b>QUESTIONNAIRE
!</b></font></div>
</td>
</tr>
</table>
<form action="" method="post">
<p>Tu es : </p>
<table width="23%" border="0">
<tr>
<td width="12%">
<input type="radio" name="entree_1" value="fille" >
</td>
<td width="36%">Fille</td>
<td width="15%">
<input type="radio" name="entree_1" value="garcon">
</td>
<td width="37%">Garçon</td>
</tr>
</table>
<p>Tu as :
<input type="text" name="entree_2" size="8">
ans</p>
<p>Tu es :</p>
<table width="85%" border="0">
<tr>
<td width="3%">
<input type="radio" name="entree_3" value="collegien">
</td>
<td width="11%">Collégien</td>
<td width="4%"> </td>
<td width="5%">
<input type="radio" name="entree_3" value="lyceen">
</td>
<td width="8%">Lycéen</td>
<td width="5%"> </td>
<td width="4%">
<input type="radio" name="entree_3" value="etudiant">
</td>
<td width="8%">Étudiant</td>
<td width="4%"> </td>
<td width="4%">
<input type="radio" name="entree_3" value="formation">
</td>
<td width="44%">En formation</td>
</tr>
<tr>
<td width="3%">
<input type="radio" name="entree_4" value="demploi">
</td>
<td width="11%">Demandeur d'emploi</td>
<td width="4%"> </td>
<td width="5%">
<input type="radio" name="entree_4" value="salarie">
</td>
<td width="8%">Salarié</td>
<td width="5%"> </td>
<td colspan="5"> Autres Préciser :
<input type="text" name="entree_8">
</td>
</tr>
</table>
<p>Quelle est ta ville ? :
<input type="text" name="entree_5">
</p>
<p>Comment te déplaces-tu ? :
<input type="text" name="entree_6">
</p>
<p>Quels sont tes centres d'intérêt ?
<input type="text" name="entree_7">
</p>
<p>
<input type="submit" name="Submit" value="Envoyer" onClick="MM_validateForm('textfield','','R','textfield2','','R','textfield3','','R');return document.MM_returnValue">
<input type="reset" name="Submit2" value="Rétablir">
</p>
</form>
<?
$champs_a_inserer = array (); //declaration du tableau qui va contenir les POST
$i=0; //Initialisation du compteur
foreach($_POST as $champ) //Debut de la boucle
{
$i++; //Incrementation du compteur
$champs_a_inserer[$i] = htmlentities($_POST["entree_".$i]); //Stochage des POST
}
if ($_POST["entree_8"] != ''){$champs_a_inserer[4] = htmlentities($_POST['entree_8']);}
//Affichage de test
echo $champs_a_inserer[1]."<br>";
echo $champs_a_inserer[2]."<br>";
echo $champs_a_inserer[3]."<br>";
echo $champs_a_inserer[4]."<br>";
echo $champs_a_inserer[5]."<br>";
echo $champs_a_inserer[6]."<br>";
echo $champs_a_inserer[7]."<br>";
//Envoi de mail
$to = "test@yahoo.fr";
$subject = "Test envoi de mail";
$reply = "contact@domaine.com";
$contenu = .$champs_a_inserer[1]."<br>";
$contenu .= .$champs_a_inserer[2]."<br>";
$contenu .= .$champs_a_inserer[3]."<br>";
$contenu .= .$champs_a_inserer[4]."<br>";
$contenu .= .$champs_a_inserer[5]."<br>";
$contenu .= .$champs_a_inserer[6]."<br>";
$contenu .= .$champs_a_inserer[7]."<br>";
$resultat = mail($to,$subject,$contenu,$reply);
}
if($resultat)
{
echo "email envoyé avec succès";
}
else
{
echo "échec envoi du mail vérifiez les données entrées";
}
?>
</body>
</html>
C'est encore moi,
J'ai une ou deux questions à te poser :
Est-ce que je pourrai ajouter des champs facilement, tu crois ? (je veux dire sans tout basarder ?)
En fait, maintenant, il me vient tout un tas d'idées de questions supplémentaires.
Par contre, j'ai copier / coller le code dans une page html et lorsque je la mets en ligne, au-dessous des boutons "envoyer" et "rétablir" il y a du code :
"; echo $champs_a_inserer[2]."
"; echo $champs_a_inserer[3]."
"; echo $champs_a_inserer[4]."
"; echo $champs_a_inserer[5]."
"; echo $champs_a_inserer[6]."
"; echo $champs_a_inserer[7]."
"; //Envoi de mail $to = "test@yahoo.fr"; $subject = "Test envoi de mail"; $reply = "contact@domaine.com"; $contenu = .$champs_a_inserer[1]."
"; $contenu .= .$champs_a_inserer[2]."
"; $contenu .= .$champs_a_inserer[3]."
"; $contenu .= .$champs_a_inserer[4]."
"; $contenu .= .$champs_a_inserer[5]."
"; $contenu .= .$champs_a_inserer[6]."
"; $contenu .= .$champs_a_inserer[7]."
"; $resultat = mail($to,$subject,$contenu,$reply); } if($resultat) { echo "email envoyé avec succès"; } else { echo "échec envoi du mail vérifiez les données entrées"; } ?>
Je crois que ce n'est pas normal, non ?
Bonne soirée,
Éric
J'ai une ou deux questions à te poser :
Est-ce que je pourrai ajouter des champs facilement, tu crois ? (je veux dire sans tout basarder ?)
En fait, maintenant, il me vient tout un tas d'idées de questions supplémentaires.
Par contre, j'ai copier / coller le code dans une page html et lorsque je la mets en ligne, au-dessous des boutons "envoyer" et "rétablir" il y a du code :
"; echo $champs_a_inserer[2]."
"; echo $champs_a_inserer[3]."
"; echo $champs_a_inserer[4]."
"; echo $champs_a_inserer[5]."
"; echo $champs_a_inserer[6]."
"; echo $champs_a_inserer[7]."
"; //Envoi de mail $to = "test@yahoo.fr"; $subject = "Test envoi de mail"; $reply = "contact@domaine.com"; $contenu = .$champs_a_inserer[1]."
"; $contenu .= .$champs_a_inserer[2]."
"; $contenu .= .$champs_a_inserer[3]."
"; $contenu .= .$champs_a_inserer[4]."
"; $contenu .= .$champs_a_inserer[5]."
"; $contenu .= .$champs_a_inserer[6]."
"; $contenu .= .$champs_a_inserer[7]."
"; $resultat = mail($to,$subject,$contenu,$reply); } if($resultat) { echo "email envoyé avec succès"; } else { echo "échec envoi du mail vérifiez les données entrées"; } ?>
Je crois que ce n'est pas normal, non ?
Bonne soirée,
Éric
Essaies ça
<?
$email = "mail@domaine.com";
$sujet = "Confirmation de mail";
$messages = "test";
$fr="From: test@test.com";
// Envoi
mail ($email,$sujet,$messages,$fr);?>
<?
$email = "mail@domaine.com";
$sujet = "Confirmation de mail";
$messages = "test";
$fr="From: test@test.com";
// Envoi
mail ($email,$sujet,$messages,$fr);?>
Désolé, ça le fait pas ... les mails ont l'air d'être envoyés, mais rien n'arrive.
Puis il y a toujours les codes :
"; echo $champs_a_inserer[2]."
"; echo $champs_a_inserer[3]."
"; echo $champs_a_inserer[4]."
"; echo $champs_a_inserer[5]."
"; echo $champs_a_inserer[6]."
"; echo $champs_a_inserer[7]."
"; //Envoi de mail } if($resultat) { echo "email envoyé avec succès"; } else { echo "échec envoi du mail vérifiez les données entrées"; } ?>
sur le formulaire en ligne ... c'est pas très joli ...
Puis il y a toujours les codes :
"; echo $champs_a_inserer[2]."
"; echo $champs_a_inserer[3]."
"; echo $champs_a_inserer[4]."
"; echo $champs_a_inserer[5]."
"; echo $champs_a_inserer[6]."
"; echo $champs_a_inserer[7]."
"; //Envoi de mail } if($resultat) { echo "email envoyé avec succès"; } else { echo "échec envoi du mail vérifiez les données entrées"; } ?>
sur le formulaire en ligne ... c'est pas très joli ...
Tu peux le supprimer, c'etait juste un moyen pour verifier que les variables postées sont récupérées.
Pour l'envoi de mail verifies que ton serveur supporte la fonction mail() de php
Pour l'envoi de mail verifies que ton serveur supporte la fonction mail() de php
OK ,je peux effacer toute la partie :
"; echo $champs_a_inserer[2]."
"; echo $champs_a_inserer[3]."
"; echo $champs_a_inserer[4]."
"; echo $champs_a_inserer[5]."
"; echo $champs_a_inserer[6]."
"; echo $champs_a_inserer[7]."
"; //Envoi de mail } if($resultat) { echo "email envoyé avec succès"; } else { echo "échec envoi du mail vérifiez les données entrées"; } ?>
Par contre mon serveur accepte tout à fait la fonction mail ()
Merci encore et bonne soirée,
Éric
"; echo $champs_a_inserer[2]."
"; echo $champs_a_inserer[3]."
"; echo $champs_a_inserer[4]."
"; echo $champs_a_inserer[5]."
"; echo $champs_a_inserer[6]."
"; echo $champs_a_inserer[7]."
"; //Envoi de mail } if($resultat) { echo "email envoyé avec succès"; } else { echo "échec envoi du mail vérifiez les données entrées"; } ?>
Par contre mon serveur accepte tout à fait la fonction mail ()
Merci encore et bonne soirée,
Éric
Tu peux me faire voir tout le code maintenant, comment il est devenu ?
Bonjour Briiiix,
Désolé de ne pas t'avoir répondu plus tôt mais j'ai eu de la visite hier soir.
Voici le nouveau code qui affiche toujours des erreurs dans le formulaire et n'envoie pas de mail au clic du bouton envoyer.
Si tu as une idée ...
<html>
<head>
<title>Questionnaire</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript">
<!--
function MM_findObj(n, d) { //v4.0
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && document.getElementById) x=document.getElementById(n); return x;
}
function MM_validateForm() { //v4.0
var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
if (val) { nm=val.name; if ((val=val.value)!="") {
if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';
} else if (test!='R') {
if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
min=test.substring(8,p); max=test.substring(p+1);
if (val<min || max<val) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
} } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }
} if (errors) alert('The following error(s) occurred:\n'+errors);
document.MM_returnValue = (errors == '');
}
//-->
</script>
</head>
<body bgcolor="#FFCC66" text="#000000">
<p> </p>
<table width="75%" border="1">
<tr>
<td bordercolor="#3333CC" height="47">
<div align="center"><font size="+2"><b>QUESTIONNAIRE
!</b></font></div>
</td>
</tr>
</table>
<form action="" method="post">
<p>Tu es : </p>
<table width="23%" border="0">
<tr>
<td width="12%">
<input type="radio" name="entree_1" value="fille" >
</td>
<td width="36%">Fille</td>
<td width="15%">
<input type="radio" name="entree_1" value="garcon">
</td>
<td width="37%">Garçon</td>
</tr>
</table>
<p>Tu as :
<input type="text" name="entree_2" size="8">
ans</p>
<p>Tu es :</p>
<table width="85%" border="0">
<tr>
<td width="3%">
<input type="radio" name="entree_3" value="collegien">
</td>
<td width="11%">Collégien</td>
<td width="4%"> </td>
<td width="5%">
<input type="radio" name="entree_3" value="lyceen">
</td>
<td width="8%">Lycéen</td>
<td width="5%"> </td>
<td width="4%">
<input type="radio" name="entree_3" value="etudiant">
</td>
<td width="8%">Étudiant</td>
<td width="4%"> </td>
<td width="4%">
<input type="radio" name="entree_3" value="formation">
</td>
<td width="44%">En formation</td>
</tr>
<tr>
<td width="3%">
<input type="radio" name="entree_4" value="demploi">
</td>
<td width="11%">Demandeur d'emploi</td>
<td width="4%"> </td>
<td width="5%">
<input type="radio" name="entree_4" value="salarie">
</td>
<td width="8%">Salarié</td>
<td width="5%"> </td>
<td colspan="5"> Autres Préciser :
<input type="text" name="entree_8">
</td>
</tr>
</table>
<p>Quelle est ta ville ? :
<input type="text" name="entree_5">
</p>
<p>Comment te déplaces-tu ? :
<input type="text" name="entree_6">
</p>
<p>Quels sont tes centres d'intérêt ?
<input type="text" name="entree_7">
</p>
<p>
<input type="submit" name="Submit" value="Envoyer" onClick="MM_validateForm('textfield','','R','textfield2','','R','textfield3','','R');return document.MM_returnValue">
<input type="reset" name="Submit2" value="Rétablir">
</p>
</form>
<?
$champs_a_inserer = array (); //declaration du tableau qui va contenir les POST
$i=0; //Initialisation du compteur
foreach($_POST as $champ) //Debut de la boucle
{
$i++; //Incrementation du compteur
$champs_a_inserer[$i] = htmlentities($_POST["entree_".$i]); //Stochage des POST
}
if ($_POST["entree_8"] != ''){$champs_a_inserer[4] = htmlentities($_POST['entree_8']);}
//Affichage de test
//echo $champs_a_inserer[1]."<br>";
//echo $champs_a_inserer[2]."<br>";
//echo $champs_a_inserer[3]."<br>";
//echo $champs_a_inserer[4]."<br>";
//echo $champs_a_inserer[5]."<br>";
//echo $champs_a_inserer[6]."<br>";
//echo $champs_a_inserer[7]."<br>";
//Envoi de mail
<?
$email = "test@yahoo.fr";
$sujet = "Confirmation de mail";
$messages = "test";
$fr="From: test@test.com";
// Envoi
mail ($email,$sujet,$messages,$fr);?>
//$to = "test@yahoo.fr";
//$subject = "Test envoi de mail";
//$reply = "contact@domaine.com";
//$contenu = .$champs_a_inserer[1]."<br>";
//$contenu .= .$champs_a_inserer[2]."<br>";
//$contenu .= .$champs_a_inserer[3]."<br>";
//$contenu .= .$champs_a_inserer[4]."<br>";
//$contenu .= .$champs_a_inserer[5]."<br>";
//$contenu .= .$champs_a_inserer[6]."<br>";
//contenu .= .$champs_a_inserer[7]."<br>";
//$resultat = mail($to,$subject,$contenu,$reply);
}
if($resultat)
{
echo "email envoyé avec succès";
}
else
{
echo "échec envoi du mail vérifiez les données entrées";
}
?>
</body>
</html>
Désolé de ne pas t'avoir répondu plus tôt mais j'ai eu de la visite hier soir.
Voici le nouveau code qui affiche toujours des erreurs dans le formulaire et n'envoie pas de mail au clic du bouton envoyer.
Si tu as une idée ...
<html>
<head>
<title>Questionnaire</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript">
<!--
function MM_findObj(n, d) { //v4.0
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && document.getElementById) x=document.getElementById(n); return x;
}
function MM_validateForm() { //v4.0
var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
if (val) { nm=val.name; if ((val=val.value)!="") {
if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';
} else if (test!='R') {
if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
min=test.substring(8,p); max=test.substring(p+1);
if (val<min || max<val) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
} } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }
} if (errors) alert('The following error(s) occurred:\n'+errors);
document.MM_returnValue = (errors == '');
}
//-->
</script>
</head>
<body bgcolor="#FFCC66" text="#000000">
<p> </p>
<table width="75%" border="1">
<tr>
<td bordercolor="#3333CC" height="47">
<div align="center"><font size="+2"><b>QUESTIONNAIRE
!</b></font></div>
</td>
</tr>
</table>
<form action="" method="post">
<p>Tu es : </p>
<table width="23%" border="0">
<tr>
<td width="12%">
<input type="radio" name="entree_1" value="fille" >
</td>
<td width="36%">Fille</td>
<td width="15%">
<input type="radio" name="entree_1" value="garcon">
</td>
<td width="37%">Garçon</td>
</tr>
</table>
<p>Tu as :
<input type="text" name="entree_2" size="8">
ans</p>
<p>Tu es :</p>
<table width="85%" border="0">
<tr>
<td width="3%">
<input type="radio" name="entree_3" value="collegien">
</td>
<td width="11%">Collégien</td>
<td width="4%"> </td>
<td width="5%">
<input type="radio" name="entree_3" value="lyceen">
</td>
<td width="8%">Lycéen</td>
<td width="5%"> </td>
<td width="4%">
<input type="radio" name="entree_3" value="etudiant">
</td>
<td width="8%">Étudiant</td>
<td width="4%"> </td>
<td width="4%">
<input type="radio" name="entree_3" value="formation">
</td>
<td width="44%">En formation</td>
</tr>
<tr>
<td width="3%">
<input type="radio" name="entree_4" value="demploi">
</td>
<td width="11%">Demandeur d'emploi</td>
<td width="4%"> </td>
<td width="5%">
<input type="radio" name="entree_4" value="salarie">
</td>
<td width="8%">Salarié</td>
<td width="5%"> </td>
<td colspan="5"> Autres Préciser :
<input type="text" name="entree_8">
</td>
</tr>
</table>
<p>Quelle est ta ville ? :
<input type="text" name="entree_5">
</p>
<p>Comment te déplaces-tu ? :
<input type="text" name="entree_6">
</p>
<p>Quels sont tes centres d'intérêt ?
<input type="text" name="entree_7">
</p>
<p>
<input type="submit" name="Submit" value="Envoyer" onClick="MM_validateForm('textfield','','R','textfield2','','R','textfield3','','R');return document.MM_returnValue">
<input type="reset" name="Submit2" value="Rétablir">
</p>
</form>
<?
$champs_a_inserer = array (); //declaration du tableau qui va contenir les POST
$i=0; //Initialisation du compteur
foreach($_POST as $champ) //Debut de la boucle
{
$i++; //Incrementation du compteur
$champs_a_inserer[$i] = htmlentities($_POST["entree_".$i]); //Stochage des POST
}
if ($_POST["entree_8"] != ''){$champs_a_inserer[4] = htmlentities($_POST['entree_8']);}
//Affichage de test
//echo $champs_a_inserer[1]."<br>";
//echo $champs_a_inserer[2]."<br>";
//echo $champs_a_inserer[3]."<br>";
//echo $champs_a_inserer[4]."<br>";
//echo $champs_a_inserer[5]."<br>";
//echo $champs_a_inserer[6]."<br>";
//echo $champs_a_inserer[7]."<br>";
//Envoi de mail
<?
$email = "test@yahoo.fr";
$sujet = "Confirmation de mail";
$messages = "test";
$fr="From: test@test.com";
// Envoi
mail ($email,$sujet,$messages,$fr);?>
//$to = "test@yahoo.fr";
//$subject = "Test envoi de mail";
//$reply = "contact@domaine.com";
//$contenu = .$champs_a_inserer[1]."<br>";
//$contenu .= .$champs_a_inserer[2]."<br>";
//$contenu .= .$champs_a_inserer[3]."<br>";
//$contenu .= .$champs_a_inserer[4]."<br>";
//$contenu .= .$champs_a_inserer[5]."<br>";
//$contenu .= .$champs_a_inserer[6]."<br>";
//contenu .= .$champs_a_inserer[7]."<br>";
//$resultat = mail($to,$subject,$contenu,$reply);
}
if($resultat)
{
echo "email envoyé avec succès";
}
else
{
echo "échec envoi du mail vérifiez les données entrées";
}
?>
</body>
</html>
C'est normal que ça marche pas, tu viens de désactiver la partie chargée de l'envoi du mail:
//$to = "test@yahoo.fr";
//$subject = "Test envoi de mail";
//$reply = "contact@domaine.com";
//$contenu = .$champs_a_inserer[1]."<br>";
//$contenu .= .$champs_a_inserer[2]."<br>";
//$contenu .= .$champs_a_inserer[3]."<br>";
//$contenu .= .$champs_a_inserer[4]."<br>";
//$contenu .= .$champs_a_inserer[5]."<br>";
//$contenu .= .$champs_a_inserer[6]."<br>";
//contenu .= .$champs_a_inserer[7]."<br>";
//$resultat = mail($to,$subject,$contenu,$reply);
Enleves les // pour chacune des lignes que je viens de citer
$to = "test@yahoo.fr";
$subject = "Test envoi de mail";
$reply = "contact@domaine.com";
$contenu = .$champs_a_inserer[1]."<br>";
$contenu .= .$champs_a_inserer[2]."<br>";
$contenu .= .$champs_a_inserer[3]."<br>";
$contenu .= .$champs_a_inserer[4]."<br>";
$contenu .= .$champs_a_inserer[5]."<br>";
$contenu .= .$champs_a_inserer[6]."<br>";
$contenu .= .$champs_a_inserer[7]."<br>";
$resultat = mail($to,$subject,$contenu,$reply);
Bon travail
//$to = "test@yahoo.fr";
//$subject = "Test envoi de mail";
//$reply = "contact@domaine.com";
//$contenu = .$champs_a_inserer[1]."<br>";
//$contenu .= .$champs_a_inserer[2]."<br>";
//$contenu .= .$champs_a_inserer[3]."<br>";
//$contenu .= .$champs_a_inserer[4]."<br>";
//$contenu .= .$champs_a_inserer[5]."<br>";
//$contenu .= .$champs_a_inserer[6]."<br>";
//contenu .= .$champs_a_inserer[7]."<br>";
//$resultat = mail($to,$subject,$contenu,$reply);
Enleves les // pour chacune des lignes que je viens de citer
$to = "test@yahoo.fr";
$subject = "Test envoi de mail";
$reply = "contact@domaine.com";
$contenu = .$champs_a_inserer[1]."<br>";
$contenu .= .$champs_a_inserer[2]."<br>";
$contenu .= .$champs_a_inserer[3]."<br>";
$contenu .= .$champs_a_inserer[4]."<br>";
$contenu .= .$champs_a_inserer[5]."<br>";
$contenu .= .$champs_a_inserer[6]."<br>";
$contenu .= .$champs_a_inserer[7]."<br>";
$resultat = mail($to,$subject,$contenu,$reply);
Bon travail
Merci Briiiiix,
J'ai remis comme c'était mais ça fait toujours pareil :
1. Une fois en ligne mon formulaire affiche ces lignes au-dessous des bouton "envoyer" et "rétablir" :
"; //echo $champs_a_inserer[2]."
"; //echo $champs_a_inserer[3]."
"; //echo $champs_a_inserer[4]."
"; //echo $champs_a_inserer[5]."
"; //echo $champs_a_inserer[6]."
"; //echo $champs_a_inserer[7]."
"; //Envoi de mail $to = "emarie3680@yahoo.fr"; $subject = "Test envoi de mail"; $reply = "contact@domaine.com"; $contenu = .$champs_a_inserer[1]."
"; $contenu .= .$champs_a_inserer[2]."
"; $contenu .= .$champs_a_inserer[3]."
"; $contenu .= .$champs_a_inserer[4]."
"; $contenu .= .$champs_a_inserer[5]."
"; $contenu .= .$champs_a_inserer[6]."
"; contenu .= .$champs_a_inserer[7]."
"; $resultat = mail($to,$subject,$contenu,$reply); } if($resultat) { echo "email envoyé avec succès"; } else { echo "échec envoi du mail vérifiez les données entrées"; } ?>
De plus, le mail n'est pas envoyé...
Merci pour ta patience.
J'ai remis comme c'était mais ça fait toujours pareil :
1. Une fois en ligne mon formulaire affiche ces lignes au-dessous des bouton "envoyer" et "rétablir" :
"; //echo $champs_a_inserer[2]."
"; //echo $champs_a_inserer[3]."
"; //echo $champs_a_inserer[4]."
"; //echo $champs_a_inserer[5]."
"; //echo $champs_a_inserer[6]."
"; //echo $champs_a_inserer[7]."
"; //Envoi de mail $to = "emarie3680@yahoo.fr"; $subject = "Test envoi de mail"; $reply = "contact@domaine.com"; $contenu = .$champs_a_inserer[1]."
"; $contenu .= .$champs_a_inserer[2]."
"; $contenu .= .$champs_a_inserer[3]."
"; $contenu .= .$champs_a_inserer[4]."
"; $contenu .= .$champs_a_inserer[5]."
"; $contenu .= .$champs_a_inserer[6]."
"; contenu .= .$champs_a_inserer[7]."
"; $resultat = mail($to,$subject,$contenu,$reply); } if($resultat) { echo "email envoyé avec succès"; } else { echo "échec envoi du mail vérifiez les données entrées"; } ?>
De plus, le mail n'est pas envoyé...
Merci pour ta patience.
Au sujet de mon hébergeur, voici ce qui est dit au sujet de la fonction mail() :
La fonction php mail() est disponible et fonctionne parfaitement. Cependant certaines mesures de sécurité sont présentes.
1. Les headers (le 5ième argument de la fonction mail) ne doit pas contenir de header To: (sauf si le premier paramètre est vide).
2. Il ne doit pas avoir deux sauts de ligne de suite dans les headers (\r\n\r\n ou \n\n)
3. Des headers sont ajoutés automatiquement à la fonction mail pour identifier votre site (invisible)
4. Vous pouvez envoyer un maximum de 150 mails par jour.
Ca peut aider ?
La fonction php mail() est disponible et fonctionne parfaitement. Cependant certaines mesures de sécurité sont présentes.
1. Les headers (le 5ième argument de la fonction mail) ne doit pas contenir de header To: (sauf si le premier paramètre est vide).
2. Il ne doit pas avoir deux sauts de ligne de suite dans les headers (\r\n\r\n ou \n\n)
3. Des headers sont ajoutés automatiquement à la fonction mail pour identifier votre site (invisible)
4. Vous pouvez envoyer un maximum de 150 mails par jour.
Ca peut aider ?
Essaies donc de créer une petite fonction qui respectes ces conditions afin de faire le test, puis on generaliseras
Merci encore pour ta réponse, Briiix. Mais je ne sais pas faire ce que tu me demandes. Je crois que je vais laisser tomber.
Ne laisses jamais tomber, ne me deçoit pas.
Aller un peut de courage.
Construit un scrip d'envoi de mail, je vais le reviser pour toi
Aller un peut de courage.
Construit un scrip d'envoi de mail, je vais le reviser pour toi
Le script suivant fonctionne. Je reçois un mail avec soit garçon, soit fille.
En revanche, dès que j'essaie de rajouter "Age" selon le même principe que "garçon" ou "fille" j'ai une parse error au niveau de "contenu". Voilà voilà ...
<?php
if($_POST)
{
//$fille = $_POST['fille'];
//$garcon = $_POST['garcon'];
//$Age = $_POST['Age'];
//$collegien = $_POST['collegien'];
//$lyceen = $_POST['lyceen'];
//$etudiant = $_POST['etudiant'];
//$formation = $_POST['formation'];
//$demploi = $_POST['demploi'];
//$salarie = $_POST['salarie'];
//$autressitu = $_POST['autressitu'];
//$SituationAutre = $_POST['SituationAutre'];
//$Ville = $_POST['Ville'];
//$centresinteret = $_POST['centresinteret'];
if(isset($_POST['fille']))
{
$fille = htmlentities($_POST['fille']);
}
if(isset($_POST['garcon']))
{
$garcon = htmlentities($_POST['garcon']);
}
if(empty($erreurs))
{
$to = "test@yahoo.fr";
$contenu = ".$fille;
$contenu .= ".$garcon;
$resultat = mail($to,$subject,$contenu,$reply);
}
if($resultat)
{
echo "email envoyé avec succès";
}
else
{
echo "échec envoi du mail vérifiez les données entrées";
}
}
?>
En revanche, dès que j'essaie de rajouter "Age" selon le même principe que "garçon" ou "fille" j'ai une parse error au niveau de "contenu". Voilà voilà ...
<?php
if($_POST)
{
//$fille = $_POST['fille'];
//$garcon = $_POST['garcon'];
//$Age = $_POST['Age'];
//$collegien = $_POST['collegien'];
//$lyceen = $_POST['lyceen'];
//$etudiant = $_POST['etudiant'];
//$formation = $_POST['formation'];
//$demploi = $_POST['demploi'];
//$salarie = $_POST['salarie'];
//$autressitu = $_POST['autressitu'];
//$SituationAutre = $_POST['SituationAutre'];
//$Ville = $_POST['Ville'];
//$centresinteret = $_POST['centresinteret'];
if(isset($_POST['fille']))
{
$fille = htmlentities($_POST['fille']);
}
if(isset($_POST['garcon']))
{
$garcon = htmlentities($_POST['garcon']);
}
if(empty($erreurs))
{
$to = "test@yahoo.fr";
$contenu = ".$fille;
$contenu .= ".$garcon;
$resultat = mail($to,$subject,$contenu,$reply);
}
if($resultat)
{
echo "email envoyé avec succès";
}
else
{
echo "échec envoi du mail vérifiez les données entrées";
}
}
?>