Pb dans traitement3.php

olive_sibile -  
 le père -
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>");
?>
Configuration: Windows XP
Internet Explorer 7.0

6 réponses

  1. le père
     
    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
  2. olive_sibile
     
    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
  3. olive_sibile
     
    <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
  4. le père
     
    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
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. olive_sibile
     
    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
  7. le père
     
    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