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 :

Méthodes GET / POST


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Étudiant
    Inscrit en
    Mai 2004
    Messages
    110
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2004
    Messages : 110
    Points : 50
    Points
    50
    Par défaut Méthodes GET / POST
    Bonjour,

    Je voudrais savoir une petite chose.
    Lorsque j'utilise des liens href, les paramètres sont passées via la méthode get (par exemple dans <a href="toto.php?a=titi">, il faut utiliser $_GET[a] pour récupérer titi), c'est bien ça ??
    J'utilise par la suite des formulaires avec la méthode post et je voudrais faire un switch sur le "a" mais je peux pas car deux méthodes différentes.

    1. Est-ce que l'on peut modifier la méthode des href en post ?
    2. Sinon, au niveau sécurité et qualité, est-ce grave de faire des formulaires en get ?

    Merci d'avance

  2. #2
    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
    Salut,

    Citation Envoyé par KeKeMaN
    1. Est-ce que l'on peut modifier la méthode des href en post ?
    non, pas directement. Tu pourrais t'amuser à faire un formulaire avec la methode post, et le lien qui fait submit de ce form... Mais bon, est-ce que ca en vaut la peine...

    Citation Envoyé par KeKeMaN
    2. Sinon, au niveau sécurité et qualité, est-ce grave de faire des formulaires en get ?
    tout dépend du type de formulaire. Pour un form de recherche par exemple, le get est très bien car si une page de résultat t'intéresse, tu peux copier le lien et l'envoyer à qqn qui arrivera (normalement) au même endroit. Pour un form d'inscription, là le get est à bannir (ca va dans l'historique des browsers, etc)
    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

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2005
    Messages : 774
    Points : 936
    Points
    936
    Par défaut
    a cela il faut ajouter que la taille de l'url est limité. pour dire q la longueur de l'url ne doit pas depasser 256 caractères si je me trompe. donc si ton form a bcp d'element ça pose pbm
    Les hommes naissent et demeurent libres et egaux en dignité et en droit. Les distinctions sociales ne peuvent etre fondées que sur l'utilité commune. Article 1 droits et de l'homme et du citoyen. 1789

  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
    Tout à fait.

    J'ajouterai meme encore cette url intéressante:

    http://www.w3.org/2001/tag/doc/whenToUseGet.html
    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 du Club
    Étudiant
    Inscrit en
    Mai 2004
    Messages
    110
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2004
    Messages : 110
    Points : 50
    Points
    50
    Par défaut
    ouais ben en plus c'est un formulaire d'ajout d'utilisateur ....

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    /* ###################### INITIALISATION DES VARIABLES ###################### */
    // variables de contenu 
    $titre = "";
    $contenu = "";
    $box = "";
    // variables dépendant de la zone
    $menu = "../skin/menuDefaut.frg.html";
    $utilisateur = new Utilisateur();
     
    /* ############## FABRICATION DE LA PAGE À ENVOYER AU CLIENT ############## */
    switch($_GET["a"]) {
        case "ajouter" :
        $titre = "Gestion des utilisateurs";
        $contenu = "Ajout d'un nouvel utilisateur";
        $box = $utilisateur->afficherBoxAjout();
        $menu = "../skin/menuDefaut.frg.html";
        break;
     
        case "confirmerAjout" :
        $titre = "Gestion des utilisateurs";
        $utilisateur->identifiant = $_GET["identifiant"];
        $utilisateur->mdp = md5($_GET["mdp"]);
        $utilisateur->nom = $_GET["nom"];
        $utilisateur->prenom = $_GET["prenom"];
        $utilisateur->statut = $_GET["statut"];
        $contenu = $utilisateur->ajouterUtilisateur();
        $menu = "../skin/menuRetour.frg.html";
        break;
     
        case "supprimer" :
        $titre = "Gestion des utilisateurs";
        $contenu = "Suppression d'un utilisateur";
        $box = $utilisateur->afficherBoxSuppression();
        $menu = "../skin/menuDefaut.frg.html";    
        break;
     
        case "retour" :
        case "annuler" :
        header("Location: ../admin/index.php");
        break;
     
        default :
        $titre = "defaut ...";
    }
     
    /* ########  INCLUSION DU HTML ######## */
    require_once("../skin/affiche.html.php");
    en fait à partir de la page index, j'ai un menu avec un lien :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="utilisateur.php?a=ajouter">Ajout d'un utilisateur</a>
    et mon formulaire a un bouton avec value="confirmerAjout" pour la confirmation et "retour" pour annuler.

    comment pourrais-je faire alors ??

  6. #6
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 235
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 235
    Points : 15 532
    Points
    15 532
    Par défaut
    dans ce cas tu peux faire ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <form action="?a=confirmerAjout" method="post">...
    et tu récupera bien la valeur 'confirmerAjout' dans $_GET['a']

  7. #7
    Membre du Club
    Étudiant
    Inscrit en
    Mai 2004
    Messages
    110
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2004
    Messages : 110
    Points : 50
    Points
    50
    Par défaut
    Citation Envoyé par mathieu
    dans ce cas tu peux faire ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <form action="?a=confirmerAjout" method="post">...
    et tu récupera bien la valeur 'confirmerAjout' dans $_GET['a']
    ouais mais alors je peux pas gérer deux boutons dans mon formulaire :
    1. valider l'ajout
    2. annuler l'ajout et retour au menu

  8. #8
    Membre confirmé Avatar de masu
    Inscrit en
    Février 2004
    Messages
    428
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 428
    Points : 484
    Points
    484
    Par défaut
    ne peux-tu pas remplir un champ hidden dans ton formulaire avec la valeur de a passé par l'url ?
    DON'T PANIC

  9. #9
    Membre du Club
    Étudiant
    Inscrit en
    Mai 2004
    Messages
    110
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2004
    Messages : 110
    Points : 50
    Points
    50
    Par défaut
    je me suis débrouillé autrement, d'ailleurs mon code me parait plus propre maintenant !!
    merci de vos informations

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] Moteur de recherche Get / Post
    Par soksabaidee dans le forum PHP & Base de données
    Réponses: 18
    Dernier message: 01/06/2010, 15h20
  2. problème navigation GET POST
    Par bibi_du_63 dans le forum JSF
    Réponses: 4
    Dernier message: 21/04/2010, 09h32
  3. [eCommerce] Passage de GET à POST
    Par piranha2209 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 7
    Dernier message: 31/12/2007, 02h43
  4. [ASP.Net 2] GET, POST et code behind
    Par Mose dans le forum ASP.NET
    Réponses: 19
    Dernier message: 29/11/2007, 09h06
  5. C++ Builder 3 GET & POST via Proxy avec Identification
    Par izak52g dans le forum Bibliothèques
    Réponses: 0
    Dernier message: 06/09/2007, 10h11

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