Pb dans traitement3.php

Fermé
olive_sibile - 11 janv. 2008 à 18:06
 le père - 12 janv. 2008 à 10:05
Bonjour,

J ai deux problemes dans mon fichier traitement3.php

1 - quand l utilisateur selectionne plusieurs valeurs avec les checkbox, seulement la derniere valeurs apparait sur le mail que je recois
2 - je souhaite qualifier les valeurs que je recois sur mon mail, c est a dire pour 'plongee', l utilisateur peut selectioner 'oui' ou 'non' quand je recois le mail de l utilsateur, est specifie seulement 'oui' si l utilisateur a selectionne 'oui'> Je souhaiterai recevoir plongee:oui

<html>
<?php
$plongee=htmlentities($_POST['plongee']);
$cours=htmlentities($_POST['cours']);
$jour=htmlentities($_POST['jour']);
$texte.=$plongee;
$texte.=$cours;
$texte.=$jour;
$adresse="info@********.com";
$from="From: $prenom $nom<$email>\r\n";
$from.="Reply-To: $prenom $nom <$email>\n";
$from.="X-priority:3\n";
$from.="MIME-Version: 1.0\r\n";
$from.="Content-Type: text/html";
if (mail($adresse,$sujet,$texte,$from))
echo("<center><font color=blue><br><br><br><h2>Formulaire envoyé ! Je vous répondrais rapidement. Merci!</h2></font><br><a href=/>Cliquez ici pour revenir à l'accueil</a></center>");
else
echo("<center><font color=red><br><br><br><h2>Problème à l'envoi du mail...désolé nous ne pouvons actuellement traiter votre demande</h2></font><br>Contactez nous plus <a href=\"mailto:$adresse\">classiquement</a>");
?>
A voir également:

6 réponses

Bonjour

1 - comment as-tu défini tes checkbox dans ton formulaire, et comment récupères-tu leur valeur ?
2 - pourtant, tu nous as déjà montré un script où tu le faisais bien... il faut faire (je ne montre que pour plongée) :
$texte.=" plongée : ".$plongee;
0
olive_sibile
11 janv. 2008 à 18:25
Merci pour question n2

1 - <p>jour:
<table border='0' width='100%' cellspacing='1' cellpadding='4'>
<tr>
<td width='7%'><input type='hidden' name='champ8[]' value='aucune'>
<input type='checkbox' name='jour' value='lundi'></td>
<td width='93%'>lundi</td>
</tr>
<tr>
<td width='7%'><input type='checkbox' name='jour' value='mardi'></td>
<td width='93%'>mardi</td>
</tr>
<tr>
<td width='7%'><input type='checkbox' name='jour' value='mercredi'></td>
<td width='93%'>mercredi</td>
</tr>
</table>
<p> </p>
0
olive_sibile
11 janv. 2008 à 18:33
<p>jour:
<table border='0' width='100%' cellspacing='1' cellpadding='4'>
<tr>
<td width='7%'><input type='checkbox' name='jour' value='lundi'></td>
<td width='93%'>lundi</td>
</tr>
<tr>
<td width='7%'><input type='checkbox' name='jour' value='mardi'></td>
<td width='93%'>mardi</td>
</tr>
<tr>
<td width='7%'><input type='checkbox' name='jour' value='mercredi'></td>
<td width='93%'>mercredi</td>
</tr>
</table>
<p> </p>
0
Pour pouvoir distinguer les jours les uns des autres, tu peux soit leur donner des noms différents, soit les définir comme un seul tableau.

Allons-y pour la seconde première possibilité.
dans le formulaire, remplace name= 'jour' par name = 'jour[]' (pour tous les jours bien sûr)
dans l'envoi de mail, il va falloir faire une boucle pour faire le tour des jours :

remplace
$texte.=$jour;
par

$texte := "jour(s) :"
foreach ($jour as $jj) {
$texte .= " ".$jj
}

et voilà
0

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

Posez votre question
olive_sibile
12 janv. 2008 à 05:04
Bonjour Le Pere,
Mon fichier traqitement3.php ne fonctionne pas, message erreur sur page web: 'Parse error: syntax error, unexpected T_FOREACH in /home/niceas5/public_html/infomation/traitement3.php on line 8'
J ai essaye de modifier mais en vain.
merci pour ton aide

<html>
<?php
$plongee=htmlentities($_POST['plongee']);
$cours=htmlentities($_POST['cours']);
$texte.=htmlentities('plongee:'.$plongee);
$texte.=htmlentities('cours:'.$cours);
$texte.='jour(s) :'
foreach($jour as $jj)
{
$texte.=''.$jj
}
$adresse="info@*****.com";
$from="From: $prenom $nom<$email>\r\n";
$from.="Reply-To: $prenom $nom <$email>\n";
$from.="X-priority:3\n";
$from.="MIME-Version: 1.0\r\n";
$from.="Content-Type: text/html; charset+iso-8859-1\n";
if (mail($adresse,$sujet,$texte,$from))
echo("<center><font color=blue><br><br><br><h2>Formulaire envoyé ! Je vous répondrais rapidement. Merci!</h2></font><br><a href=/>Cliquez ici pour revenir à l'accueil</a></center>");
else
echo("<center><font color=red><br><br><br><h2>Problème à l'envoi du mail...désolé nous ne pouvons actuellement traiter votre demande</h2></font><br>Contactez nous plus <a href=\"mailto:$adresse\">classiquement</a>");
?>
0
Bonjour olive

Tu ne dors jamais ;-) ?

'Parse error ... on line 8'
En fait, l'erreur est sur la ligne précédente :
$texte.='jour(s) :'
il manque un ; à la fin
$texte.='jour(s) :' ;

les instructions PHP doivent être terminée par un ; (facultatif avant la balise fermante ?>)
même chose d'ailleurs quelques lignes plus loin $texte.=''.$jj

Je sais, c'est moi qui ai écrit l'erreur, mais quand même, c'est le B.A. BA du PHP.
Essaye d'en apprendre quelques rudiments, nous gagnerons tous les deux beaucoup de temps.
0