Partage
  • Partager sur Facebook
  • Partager sur Twitter

debuggage de script

un "parse error" bien embêtant

    22 juillet 2006 à 0:33:41

    Salut,je suis en train de monter un site avec un formulaire et je veux tester si l'utilisateur entre bien les information obligatoire (prénom, nom, tél) et pour le tél si c'est un bon numéro (québécois) mais je recois une érreur:
    Parse error: syntax error, unexpected '{', expecting ')' in /opt/lampp/htdocs/grandeurnature/traitement.php on line 9

    voici mon fichier:

    <?php
    if (isset($_POST['prenom']))
    {
            if (isset($_POST['nom']))
            {
                    if (isset($_POST['telephone']))
                    {
                            if (preg_match(#^([0-9]{3}[-. ]?){2}[0-9]{4}$#, $_POST['telephone']))
                            {
                                    if (isset($_POST['boitelunch']))
                                    {
                                            echo'achat: OK, TOUT OK! on enregistre';
                                    }

                                    else
                                    {
                                            echo'achat: non, on enregistre pas';
                                    }
                            }

                            else
                            {
                                    echo'telephone: INVALIDE';
                            }
                    }

                    else
                    {
                            echo'telephone: non';
                    }
            }

            else
            {
                    echo'nom: non';
            }
    }

    else
    {
            echo'prenom: non';
    }
    ?>


    perso je voit vraiment pas ou est mon érreur si quelqu'un pouvais me montrer la voie sa cerais très aprécier
    merci
    • Partager sur Facebook
    • Partager sur Twitter
      22 juillet 2006 à 0:36:18

      Tu as oublié les apostrophes autour de ta regex ;)

      edit : tu pourrais alléger un peu ton code en enlevant quelques accolades quand il n'y a qu'une seule instruction à l'intérieur, parce que là ça fait un peu foutoir ^^

      if ($var === 2)
          echo 'ok';
      else
          echo 'nok';

      // au lieu de

      if ($var === 2)
          {
          echo 'ok';
          }
      else
          {
          echo 'nok';
          }
      • Partager sur Facebook
      • Partager sur Twitter
        22 juillet 2006 à 0:38:50

        a oui c'est vrai! j'avais completement passer a coté! merci bcp!

        EDIT: a zut j'ai oublier d'indiquer que mon prob est résolut
        • Partager sur Facebook
        • Partager sur Twitter
          22 juillet 2006 à 0:39:32

          T'as surtout fait une grosse connerie en utilisant isset, prends plutôt empty
          • Partager sur Facebook
          • Partager sur Twitter
            22 juillet 2006 à 0:40:30

            empty pk?, sa fait quoi?
            • Partager sur Facebook
            • Partager sur Twitter
              22 juillet 2006 à 0:43:16

              empty() teste si la variable existe, n'est pas vide et n'est pas égale à 0 ou FALSE ;)
              • Partager sur Facebook
              • Partager sur Twitter
                22 juillet 2006 à 0:44:29

                ok mais je vois pas trop en quoi c'est mieux que isset...
                • Partager sur Facebook
                • Partager sur Twitter
                  22 juillet 2006 à 0:45:56

                  Pour vérifier en plus que les variables ne sont pas vides ;)
                  • Partager sur Facebook
                  • Partager sur Twitter
                    22 juillet 2006 à 0:46:12

                    Parce qu'avec isset, tu peux encore te retrouver avec des variables ne valnt rien (NULL)n des variables vides, etc ect
                    Lien montrant les différences
                    • Partager sur Facebook
                    • Partager sur Twitter
                      22 juillet 2006 à 0:48:38

                      sérieux je suis tout perdu, quand je fait mon isset si la variable existe elle est forcément pas vide non?
                      • Partager sur Facebook
                      • Partager sur Twitter
                        22 juillet 2006 à 0:50:37

                        Si la variable vaut '', elle existe mais est vide ;)
                        • Partager sur Facebook
                        • Partager sur Twitter
                          22 juillet 2006 à 0:57:30

                          oki mais la j'ai un autre prob...: peut importe les info que je rentre (ou ne rentre pas) sa me dit "prenom: non" mais si je change isset par empty (partout) c'est "telephone: INVALIDE" même si mon numéro de tel est valide (ex: 555-555-5555)
                          • Partager sur Facebook
                          • Partager sur Twitter

                          debuggage de script

                          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                          • Editeur
                          • Markdown