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 :

formulaire POST envoyé sur une page en GET


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Par défaut formulaire POST envoyé sur une page en GET
    Bonjour
    Moment de faiblesse passagère, j'ai besoin d'un petit éclaircissement technique...
    Que se passe-t-il exactement, au niveau notamment des requêtes HTTP, lorsqu'on envoie un formulaire POST avec comme "action" une page qui a une adresse en GET ?
    Comment est-ce qu'on peut obtenir un objet $_GET et un objet $_POST avec une seule requête ?

    Merci d'avance...

  2. #2
    Membre expérimenté Avatar de Hug0_76
    Profil pro
    Inscrit en
    Août 2006
    Messages
    292
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 292
    Par défaut différence
    Salut,

    et bien heu..... tu connais la différence entre $_POST et $_GET????
    Sinon ben il te suffit decopier le tableau $_POST dans le tableau $_GET!
    voila c tout

  3. #3
    Membre Expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Par défaut
    Citation Envoyé par Hug0_76
    Salut,

    et bien heu..... tu connais la différence entre $_POST et $_GET????
    Sinon ben il te suffit decopier le tableau $_POST dans le tableau $_GET!
    voila c tout
    Merci de ta participation ! Mais t'es passé à côté de la question

  4. #4
    Membre éclairé Avatar de renaudjuif
    Inscrit en
    Avril 2006
    Messages
    325
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 325
    Par défaut
    Pour moi, c'est récupéré par une variable de serveur qui ne peut contenir qu'1 valeur:
    $_SERVER['REQUEST_METHOD']
    Que renverrait cette variable si on pouvait passer du get et du post en même temps ?
    Ou alors j'ai pas bien compris la question

  5. #5
    Membre Expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Par défaut
    Citation Envoyé par renaudjuif
    Que renverrait cette variable si on pouvait passer du get et du post en même temps ?
    Ou alors j'ai pas bien compris la question
    Chuis bien d'accord. Si je poste c'est parce que j'ai réussi à afficher un objet $_GET et un objet $_POST (sans bidouiller) dans la même page. Alors je me dis que j'ai raté quelque chose.

  6. #6
    Membre éclairé Avatar de renaudjuif
    Inscrit en
    Avril 2006
    Messages
    325
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 325
    Par défaut
    Ce que je fais habituellement au début de ma page qui récupère les variables, quand je ne sais pas la méthode (post ou get) utilisée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $mavar=(isset($_POST['mavar']))? $_POST['mavar']: $_GET['mavar'];
    //et traitement de $mavar...
    Là j'suis à côté de la plaque
    J'ai posté en même temps que la réponse

  7. #7
    Membre Expert
    Inscrit en
    Juillet 2004
    Messages
    1 027
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 027
    Par défaut
    Citation Envoyé par renaudjuif
    Ce que je fais habituellement au début de ma page qui récupère les variables, quand je ne sais pas la méthode (post ou get) utilisée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $mavar=(isset($_POST['mavar']))? $_POST['mavar']: $_GET['mavar'];
    //et traitement de $mavar...
    Là j'suis à côté de la plaque
    J'ai posté en même temps que la réponse
    Autant remettre le register global a on...

    Sinon non sa ne pose pas de souci.

    Une requete HTTP exemple.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    POST /search?client=firefox-a&rls=org.mozilla%3Afr%3Aofficial_s&hl=fr&q=sdff&meta=&btnG=Recherche+Google HTTP/1.1
    Host: www.google.fr
    User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.0.6) Gecko/20060728 Firefox/1.5.0.6
    Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
    Accept-Language: fr,fr-fr;q=0.8,en-us;q=0.5,en;q=0.3
    Accept-Encoding: gzip,deflate
    Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
    Keep-Alive: 300
    Connection: keep-alive
    Referer: http://www.google.fr/firefox?client=...la:fr:official
    Content-Type: application/x-www-form-urlencoded
    Content-Length: 166
    vb_login_username=sqdqd&vb_login_password=&s=&do=login&vb_login_md5password=437057b1e7c92a427c60ef0fb9b616ec&vb_login_md5password_utf=437057b1e7c92a427c60ef0fb9b616ec
    On voit bien dans cet exemple (+/- bancal) on constate bien que l'url appelé contient les variables en GET, et à la fin les variables mises en post.

  8. #8
    Membre éclairé Avatar de renaudjuif
    Inscrit en
    Avril 2006
    Messages
    325
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 325
    Par défaut
    Oui, effectivement, un code comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <?
    print_r($_POST);
    print_r($_GET);
    echo "<br>method : ".$_SERVER['REQUEST_METHOD'];
    ?>
    <form action='1.php?varGet=toto' method='post'>
    	<input type='text' name='varPost'>
    	<input type='submit'>
    </form>
    renvoie :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    Array
    (
        [varPost] => test
    )
    Array
    (
        [varGet] => toto
    )
    method : POST
    mais ça reste une méthode post: l'action définie dans le formulaire.
    apparament, le $_GET récupère ce qu'il y a dansd l'url, sans se soucier de la méthode invoquée...

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

Discussions similaires

  1. Passage d'un formulaire à un autre sur une 2ème page
    Par jlbrenas dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 25/01/2007, 23h43
  2. Post sur une page https
    Par Lethal dans le forum Entrée/Sortie
    Réponses: 2
    Dernier message: 31/08/2006, 18h41
  3. imprimer formulaire sur une page
    Par the big ben 5 dans le forum Access
    Réponses: 1
    Dernier message: 16/08/2006, 20h33
  4. Réponses: 2
    Dernier message: 30/11/2005, 12h19

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