IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Vérification du "clic" sur le bouton "submit" du formulaire


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    124
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 124
    Points : 77
    Points
    77
    Par défaut Vérification du "clic" sur le bouton "submit" du formulaire
    Bonjour

    En regardant la solution à certains de mes problèmes je suis tombé sur un forum dans lequel quelqu'un vérifie si l'internaute a cliqué sur le bouton submit du formulaire avant de traiter les données récupérées.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(isset($_POST['envoi']))


    S'il avait utilisé la méthode GET je dis pas car on peut taper des données dans l'url, mais dans la mesure où il utilise la méthode POST est ce bien nécessaire ?
    Faut me dire parce que moi je le fais jamais !!!



  2. #2
    Membre expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Points : 3 115
    Points
    3 115
    Par défaut
    C'est vrai que c'est bizarre comme truc, il faudrait connaître le contexte exact de l'utilisation. Il pourrait par exemple avoir plusieurs formulaires pointant vers la même page de traitement, et il connaîtrait ainsi quel formulaire a fait l'appel (en nommant différemment ses boutons submit)
    Pas de questions techniques par MP, le forum est là pour ça et est plus efficace.

    Orthographe : une connexion (avec un x), un langage (sans u), une requête (un seul t), 'une quote' (avec qu), une syntaxe (sans h)

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    124
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 124
    Points : 77
    Points
    77
    Par défaut
    Apparemment pas, en tout cas il en parle pas dans ces posts. Il avait un problème avec un formulaire composé de bôites à cocher. D'ailleurs sa méthode me semblait pas super, celle qu'il a de récupérer les données des boîtes à cocher.
    Si tu veux regarder la discussion :

    http://mysql.ifrance.com/showthread.php?t=927

    Moi j'ai pas lu tout le code qui est long mais juste la partie qui m'intéressait.

  4. #4
    Membre confirmé
    Profil pro
    Développeur Web
    Inscrit en
    Avril 2006
    Messages
    430
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2006
    Messages : 430
    Points : 557
    Points
    557
    Par défaut
    Citation Envoyé par bressan

    S'il avait utilisé la méthode GET je dis pas car on peut taper des données dans l'url, mais dans la mesure où il utilise la méthode POST est ce bien nécessaire ?
    Faut me dire parce que moi je le fais jamais !!!
    Moi je dirais que c'est pour éviter que quelqu'un appelle la page où des données doivent normalement être postées, sans poster d'infos. Ainsi, quitte à tester un champ qui doit normalement etre posté, le bouton submit le sera toujours. Voila certainement la raison de son test.
    Merci à Microsoft pour avoir transformé un métier relativement terne et basé sur une approche bêtement technique et rigoureuse des faits, en challenge quotidien, nécessitant une remise en question permanente à l'échelle du quart d'heure

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    124
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 124
    Points : 77
    Points
    77
    Par défaut
    Cela servirait donc à éviter une erreur si quelqu'un appelle cette page sans passer par le bouton submit !?!
    Donc c'est loin d'être inutile.

    Vous vous en servez vous de cette ligne de code dans vos scripts PHP ???

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    124
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 124
    Points : 77
    Points
    77
    Par défaut
    De cette ligne de code ou une similaire, en fait : faites vous cette vérification ???

  7. #7
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    Salut

    L'idée est de tester si un formulaire a été envoyé avant de faire des traitements sur ce que ce formulaire a envoyé, cela me semble évident.
    Exemple d'index.php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <form method="post" action="index.php">
       <input type="text" name="bouh">
       <input type="submit">
    </form>
     
     
    <?php
     
    echo htmlentities($_POST['bouh'], ENT_QUOTES, 'ISO-8859-15');
     
    ?>
    Dans ce code, si le formulaire n'est pas envoyé, alors PHP devrait t'afficher une Notice.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <form method="post" action="index.php">
       <input type="text" name="bouh">
       <input type="submit" name="submit">
    </form>
     
     
    <?php
     
    if(isset($_POST['submit'])){
       echo htmlentities($_POST['bouh'], ENT_QUOTES, 'ISO-8859-15');
    }
     
    ?>
    Ici, en revanche, tu n'aurais pas de souci.

    À toi de trouver une méthode correcte pour déterminer si le formulaire a été envoyé.

Discussions similaires

  1. Désactiver le clic droit sur les boutons
    Par alex830001 dans le forum Excel
    Réponses: 8
    Dernier message: 02/12/2008, 15h24
  2. désactiver le clic droit sur le bouton "Démarrer"
    Par tomas_o_malley dans le forum Windows XP
    Réponses: 1
    Dernier message: 02/10/2008, 10h30
  3. Réponses: 2
    Dernier message: 26/11/2006, 21h10
  4. Pb avec les clic multiple sur un boutons
    Par mikky dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 21/11/2006, 11h53
  5. [WinForms]Comment sont gérés des clics rapides sur un bouton
    Par NicolasJolet dans le forum Général Dotnet
    Réponses: 9
    Dernier message: 25/10/2006, 12h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo