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 :

urldecode automatique sur $_GET ?


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Février 2010
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 122
    Points : 71
    Points
    71
    Par défaut urldecode automatique sur $_GET ?
    Bonjour,

    Je fais un GET en appliquant urlencode sur les paramètres chaînes.
    Il est dit dans la doc, qu'il ne faut pas faire urldecode en recevant le formulaire car c'est fait automatiquement par php.
    Or je constate que ce n'est pas vrai. Si je ne fais pas urldecode à l'arrivée j'ai une chaîne toujours encodée.
    Quelqu'un voit-il où est l'erreur ??

    Merci.

  2. #2
    Membre éprouvé
    Avatar de amoiraud
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2006
    Messages
    606
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2006
    Messages : 606
    Points : 1 057
    Points
    1 057
    Par défaut
    Je ne sait pas ou tu à vu l'info disant que le $_GET faisait un urldecode automatique, pour ma part, je fait toujours un urldecode lorsque je reçoit une chaine encodée, que ce soit en GET ou en POST, et je n'ai jamais eu d'erreur

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Février 2010
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 122
    Points : 71
    Points
    71
    Par défaut lien
    Voilà où il est écrit qu'il ne faut pas faire urldecode sur le $_GET :

    http://fr2.php.net/manual/fr/function.urldecode.php

  4. #4
    Membre chevronné
    Avatar de ska_root
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    1 203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Service public

    Informations forums :
    Inscription : Août 2005
    Messages : 1 203
    Points : 1 839
    Points
    1 839
    Par défaut
    Bonjour,

    Voici un simple test qui confirme l'annotation de la doc PHP et montre pourquoi cela ne doit pas se faire :

    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
     
    <?php
    if(isset($_REQUEST['sub'])) {
       echo "(sans urldecode) GET contient : ".$_GET['tst'];
       echo "<p> </p>";
       echo "(avec urldecode) GET contient : ".urldecode($_GET['tst']);
       echo "<p> </p>";
    }
    ?>
    <form method="GET" action="<?php echo $_SERVER['PHP_SELF']; ?>">
     
       <input type="text" size="40" name="tst" value="Une chaîne de caractères %EE" readonly />
       <input type="submit" name="sub" value="envoi" />
     
    </form>

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Février 2010
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 122
    Points : 71
    Points
    71
    Par défaut
    Pas convaincu :

    je fais avant appel à la methode GET un urlencode parce que je dois passer en paramètre une chaîne pouvant contenir des blancs.
    A la réception, j'ai du faire un urldecode pour que ça marche bien que cela soit contraire à ce que dit la doc...

Discussions similaires

  1. Désactiver urldecode automatique des $_GET ?
    Par xxkirastarothxx dans le forum Langage
    Réponses: 2
    Dernier message: 01/07/2014, 15h36
  2. urldecode sur $_GET
    Par jpguiche dans le forum Langage
    Réponses: 17
    Dernier message: 18/09/2010, 20h53
  3. [Tableaux] $_GET urldecodé automatiquement ?
    Par zk dans le forum Langage
    Réponses: 3
    Dernier message: 14/06/2007, 12h44
  4. Miroire : Basculement automatique sur Oracle 9i
    Par Process Linux dans le forum Oracle
    Réponses: 3
    Dernier message: 19/09/2005, 18h37
  5. Requete et remplissage automatique sur un sitewoueb
    Par pier dans le forum Web & réseau
    Réponses: 3
    Dernier message: 17/08/2005, 11h52

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