Parse error en php - Page 2

Résolu
Précédent
  • 1
  • 2
  • 3
  1. briiiiix Messages postés 624 Statut Membre 18
     
    Bon je suis dsl, cette aprem est très chargée pour moi, je serais la le soir.
    A+
    0
  2. emarie3680 Messages postés 139 Statut Membre 13
     
    OK, merci Briiiix
    0
  3. emarie3680 Messages postés 139 Statut Membre 13
     
    Alors voilà, j'ai avancé et voici ce que donne mon php, et cela fonctionne !

    <?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'];
    $SituationAutre = $_POST['SituationAutre'];
    $deplacement = $_POST['deplacement'];
    $Ville = $_POST['Ville'];
    $centresinteret = $_POST['centresinteret'];

    if(isset($_POST['fille']))
    {
    $fille = htmlentities($_POST['fille']);
    }

    if(isset($_POST['garcon']))
    {
    $garcon = htmlentities($_POST['garcon']);
    }

    if(isset($_POST['Age']))
    {
    $Age = htmlentities($_POST['Age']);
    }

    if(isset($_POST['collegien']))
    {
    $collegien = htmlentities($_POST['collegien']);
    }

    if(isset($_POST['lyceen']))
    {
    $lyceen = htmlentities($_POST['lyceen']);
    }

    if(isset($_POST['etudiant']))
    {
    $etudiant = htmlentities($_POST['etudiant']);
    }

    if(isset($_POST['formation']))
    {
    $formation = htmlentities($_POST['formation']);
    }

    if(isset($_POST['demploi']))
    {
    $demploi = htmlentities($_POST['demploi']);
    }

    if(isset($_POST['salarie']))
    {
    $salarie = htmlentities($_POST['salarie']);
    }

    if(isset($_POST['SituationAutre']))
    {
    $SituationAutre = htmlentities($_POST['SituationAutre']);
    }

    if(isset($_POST['Ville']))
    {
    $Ville = htmlentities($_POST['Ville']);
    }

    if(isset($_POST['deplacement']))
    {
    $deplacement = htmlentities($_POST['deplacement']);
    }

    if(isset($_POST['centresinteret']))
    {
    $centresinteret = htmlentities($_POST['centresinteret']);
    }

    if(empty($erreurs))
    {
    $to = "test@yahoo.fr";
    $contenu = "$fille";
    $contenu .= "$garcon ";
    $contenu .= "J'ai $Age ans";
    $contenu .= "$collegien";
    $contenu .= "$lyceen";
    $contenu .= "$etudiant";
    $contenu .= "$formation";
    $contenu .= "$demploi";
    $contenu .= "$salarie";
    $contenu .= "$SituationAutre";
    $contenu .= "J'habite $Ville";
    $contenu .= "Je voyage en $deplacement";
    $contenu .= "$centresinteret";

    $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";
    }

    }
    ?>

    Comme tu peux le voir, c'est laborieux, mais j'avance petit à petit, tant pis. En revanche, pourrais-tu me dire s'il y a possibilité de passer à la ligne après chaque ligne $contenu .= car ce serait plus lisible dans le mail que je reçois.
    Merci encore,
    Éric
    0
  4. emarie3680 Messages postés 139 Statut Membre 13
     
    J'ai trouvé une réponse pour ma question sur le retour à la ligne : "\n"
    Mais en grand nullos je ne sais pas où le mettre.
    par exemple, dans la ligne :
    $contenu = "$fille ";
    il se met où ce "\n" ?
    Merci !
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. briiiiix Messages postés 624 Statut Membre 18
     
    "$fille \n";
    C'est simple
    0
  7. emarie3680 Messages postés 139 Statut Membre 13
     
    Ben oui, merci ! J'avais trouvé entre temps.
    Bon, je te fiche la paix et te remercie pour tout, Briiiiix !
    Bonne soirée ! J'espère pouvoir un jour te montrer le résultat final !
    0
  8. briiiiix Messages postés 624 Statut Membre 18
     
    Bon courage
    0
    1. emarie3680 Messages postés 139 Statut Membre 13
       
      Bon, et là :
      $contenu = $_POST['sexe'];
      tu le mets où ce \n ??? Je ne trouve pas et crois avoir tout essayé !
      0
  9. emarie3680 Messages postés 139 Statut Membre 13
     
    C'est bon, j'ai trouvé !
    $contenu = $_POST['sexe'] . "\n";
    0
  10. emarie3680 Messages postés 139 Statut Membre 13
     
    Encore une question (je pense la dernière).
    Lorsque l'on saisit des infos dans mes champs, s'il y a des accents, ils ne sont pas pris en compte dans les messages que je reçois dans ma boîte mail.
    vélo = v & e acute ; lo
    C'est pas cool. Est-ce dû à un codage de mon client mail ?
    Je peux éviter cela ?
    Merci !
    Éric
    0
  11. briiiiix Messages postés 624 Statut Membre 18
     
    Il s'agit d'un crochet manquant.
    J'ai corrigé ton code et j'ai amélioré sa présentation qui t'aide a distinguer les blocs.

    <?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";
    }

    }
    ?>

    Bon travail
    -1
  12. emarie3680 Messages postés 139 Statut Membre 13
     
    Super !
    Je te remercie mille fois pour ton aide et ta gentillesse !
    Bonne continuation !!
    Éric
    -1
  13. emarie3680 Messages postés 139 Statut Membre 13
     
    C'est encore moi ...
    J'ai voulu compléter mon formulaire en rajoutant deux boutons radio (oui et non).
    J'aurais voulu récupérer le choix de l'utilisateur dans mon mail. Encore une fois j'ai une parse erreur :
    Voici mon script :
    <?php
    if($_POST){
    $nom = $_POST['nom'];
    $prenom = $_POST['prenom'];
    $musique = $_POST['musique'];

    if(isset($_POST['musique']))
    htmlentities ($_POST['musique']);

    if(empty($erreurs)) {
    $to = "test@yahoo.fr";
    $contenu = "message de : ".$prenom." ".$nom;
    $contenu = "reponse : ".$musique.";
    $resultat = mail($to, $subject, $contenu, $reply);
    }

    if($resultat) {
    echo "email envoyé";
    } else {
    echo "échec";
    }

    }
    ?>

    Le résultat est :
    Parse error: syntax error, unexpected T_STRING in /home/b/bijtoulon/html/traitementest.php on line 18

    Vous arrivez à voir le gag ? Ca fait deux heures que j'essaie et je vois rien.
    Merci !
    -1
  14. briiiiix Messages postés 624 Statut Membre 18
     
    Voila,
    Un conseil, essaies toujours de diviser ton code en blocs

    <?php
    if($_POST){
    $nom = $_POST['nom'];
    $prenom = $_POST['prenom'];
    $musique = $_POST['musique'];

    $musique = "";
    if(isset($_POST['musique'])){
    $musique = htmlentities($_POST['musique']); }

    if(empty($erreurs)) {
    $to = "test@yahoo.fr";
    $contenu = "message de : ".$prenom." ".$nom;
    $contenu = "reponse : ".$musique;
    $resultat = mail($to, $subject, $contenu, $reply);
    }

    if($resultat) {
    echo "email envoyé";
    } else {
    echo "échec";
    }

    }
    ?>
    -1
  15. emarie3680 Messages postés 139 Statut Membre 13
     
    OK, merci encore ! En fait, tu laisses un espace après chaque fonction ?
    -1
  16. azerwhite Messages postés 753 Statut Membre 43
     
    Ben, débrouille toi pour que cela soit visible c'est à dire

    <?php
    if($_POST)
    {
    $nom = $_POST['nom'];
    $prenom = $_POST['prenom'];
    $musique = $_POST['musique'];

    $musique = "";
    if(isset($_POST['musique']))
    {
    $musique = htmlentities($_POST['musique']);
    }

    if(empty($erreurs))
    {
    $to = "test@yahoo.fr";
    $contenu = "message de : ".$prenom." ".$nom;
    $contenu = "reponse : ".$musique;
    $resultat = mail($to, $subject, $contenu, $reply);
    }

    if($resultat)
    {
    echo "email envoyé";
    }
    else
    {
    echo "échec";
    }

    }
    ?>

    On appel cela indentation et la présentation d'un code. Le quel des deux tu lis le mieux =>

    function insert_id($record = 0) {if ($record)return (mysql_insert_id($record)); return (mysql_insert_id());}function insert_id($record = 0){iif ($record)return (mysql_insert_id($record)); return (mysql_insert_id()); }

    function insert_id($record = 0)
    {
    if ($record)
    return (mysql_insert_id($record));
    return (mysql_insert_id());
    }
    -1
  17. emarie3680 Messages postés 139 Statut Membre 13
     
    J'ai encore un souci ...
    Du coup, dans mon mail, je ne récupère plus que la réponse cochée par l'utilisateur, je ne vois plus son nom et son prénom. (Avant j'avais "réponse de : nom prénom")
    Je ne peux utiliser $contenu qu'une seule fois ?
    Ou il faut mettre le champ musique et son résultat à la suite de ".nom; ?
    En fait, je demande le nom et le prénom puis je pose la question Aimez-vous la musique ? avec oui non comme réponse possible.
    -1
  18. azerwhite Messages postés 753 Statut Membre 43
     
    A ben, oui tu peux pas utiliser plusieurs fois le nom du variable dans ces conditions
    pour le nom et le prenom tu devrais nommer ta var : $nom_prenom et pour la musique $musique

    et On ne peut pas le voir parce que Comment Ca Marche change la mise en forme mais après

    après une condition ou une boucle je te conseil de mettre un TAB histoire d'avancer un peu le code
    -1
  19. briiiiix Messages postés 624 Statut Membre 18
     
    Dsl pour mon absence

    Pour $contenu utilisez plustot la concatenation

    if(empty($erreurs))
    {
    $to = "test@yahoo.fr";
    $contenu = "message de : ".$prenom." ".$nom;
    $contenu .= "reponse : ".$musique;
    $resultat = mail($to, $subject, $contenu, $reply);
    }

    le point avant le = indique a php qu'il faut ajouter a la variable et non pas ecraser.

    Bon travail
    -1
  20. emarie3680 Messages postés 139 Statut Membre 13
     
    Merci pour ta réponse,
    Je vais essayer ce que tu me conseilles ce soir car je commence à fatiguer ...
    En effet, c'est plus clair au niveau présentation... et lisibilité.
    Si je nomme ma var $nom_prenom qu'est-ce qu'il se passe pour des deux champs de formulaire qui eux sont différents ?
    Par contre, si j'ai un formulaire, disons, d'une dizaine de champs texte et d'une vingtaine de boutons radio ... ça va donner quoi ça au niveau du codage en php ???? Il y faudrait y passer des journées entières pour écrire le php correspondant au formulaire html... avec toutes les erreurs qui peuvent en résulter ... Vu comment je galère avec un formulaire de 4 champs !!! Il n'y a pas un moyen de générer le php d'après le formulaire ?
    Tu pourrais me conseiller un livre pour apprendre le php ? J'ai pas envie de passer mon temps à emboucanner tout le monde sur le forum à cause de parse errors en pagaille !
    Merci encore,
    Éric
    -1
  21. emarie3680 Messages postés 139 Statut Membre 13
     
    Merci Brixxx !
    Je viens de lire votre réponse au sujet du point et de la concaténation. Fallait l'inventer ça !
    Que pensez-vous de mes questions existentielles posées plus haut ?
    Bonne soirée et merci encore,
    Éric
    -1
Précédent
  • 1
  • 2
  • 3