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 :

[Tableaux] Parse d'URL


Sujet :

Langage PHP

  1. #1
    Membre averti Avatar de nicoaix
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2004
    Messages
    571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Décembre 2004
    Messages : 571
    Points : 362
    Points
    362
    Par défaut [Tableaux] Parse d'URL
    Bonjour,
    J'aimerais savoir s'il y a une fonction php (et si oui laquelle) qui permette de déterminer les noms des variables contenus dans une url?

    Par exemple, avec l'url http://monsiteweb.fr/index.php?val1=test&val2=test2
    est-il possible de savoir d'une par qu'il y a 2 variables qui ont pour noms val1 et val2 et pour valeur test1 et test2.

    Pour déterminer les valeurs j'y arrive avec parse_str, mais ce que je n'arrive pas à faire c'est déterminer le nombre et les noms des variables contenus dans l'url.

    Merci.

  2. #2
    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
    oui je crois que ça existe. essai
    array parse_url (string url)
    parse_url() retourne un tableau associatif contenant les composants de l'URL. Les composants recherchés sont : "scheme", "host", "port", "user", "pass", "path", "query", et "fragment".
    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

  3. #3
    Membre éclairé
    Avatar de Kioob
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    550
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 550
    Points : 764
    Points
    764
    Par défaut
    Hello,

    la fonction parse_str() fait ça : http://at.php.net/manual/fr/function.parse-str.php

    Et éventuellement, pour récupèrer uniquement la partie "query_string", tu peux utiliser la fonction parse_url().
    Google is watching you !

  4. #4
    Membre averti Avatar de nicoaix
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2004
    Messages
    571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Décembre 2004
    Messages : 571
    Points : 362
    Points
    362
    Par défaut
    Effectivement parse_url fonctionne. Je pensais qu'elle ne retournait que le nom d'utilisateur et le login.
    Merci.

  5. #5
    Membre averti Avatar de nicoaix
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2004
    Messages
    571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Décembre 2004
    Messages : 571
    Points : 362
    Points
    362
    Par défaut
    Je corrige... parse_url renvoit path = val1=test&val2=test2
    mais il ne renvoit pas un tableau du genre val1 => test, val2 => test2

    Et parse_str est bien mais elle suppose de connaitre le nombre et le nom des variables.

  6. #6
    Membre éclairé
    Avatar de Kioob
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    550
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 550
    Points : 764
    Points
    764
    Par défaut
    parse_str te retourne un tableau contenant exactement ce que tu souhaites...
    Google is watching you !

  7. #7
    Membre averti Avatar de nicoaix
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2004
    Messages
    571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Décembre 2004
    Messages : 571
    Points : 362
    Points
    362
    Par défaut
    Pourquoi le code suivant ne m'affiche pas les valeurs cles et valeurs:
    $str = $_SERVER['QUERY_STRING'];
    $tableau = parse_str($str);
    print_r($tableau);
    echo"$str" affiche : val1=test&val2=test2

  8. #8
    Membre éclairé
    Avatar de Kioob
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    550
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 550
    Points : 764
    Points
    764
    Par défaut
    ce n'est pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     $tableau = parse_str($str);
    mais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    parse_str( $str, $tableau );
    La doc est pourtant claire à ce sujet...
    Google is watching you !

  9. #9
    Membre averti Avatar de nicoaix
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2004
    Messages
    571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Décembre 2004
    Messages : 571
    Points : 362
    Points
    362
    Par défaut
    Ok c'est bon, c'est juste mon utilisation de la fonction qui n'était pas bonne.

    Merci

  10. #10
    Membre éclairé
    Avatar de Kioob
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    550
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 550
    Points : 764
    Points
    764
    Par défaut
    Remarque : si le but est de traiter le résultat de "$_SERVER['QUERY_STRING']", autant utiliser directement le tableau $_GET...
    Google is watching you !

  11. #11
    Membre averti Avatar de nicoaix
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2004
    Messages
    571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Décembre 2004
    Messages : 571
    Points : 362
    Points
    362
    Par défaut
    Ben non, justement si je passe par là c'est que mon application web doit récupérer une url dont je ne connais pas la définition précise... ce qui m'epêche d'utiliser le GET, sinon ça serait déjà fait.

  12. #12
    Membre éclairé
    Avatar de Kioob
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    550
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 550
    Points : 764
    Points
    764
    Par défaut
    Je disais ça à cause de ton exemple plus haut, c'est tout.
    Google is watching you !

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

Discussions similaires

  1. [Tableaux] Parse error :(
    Par caroen dans le forum Langage
    Réponses: 7
    Dernier message: 23/02/2007, 10h00
  2. Réponses: 2
    Dernier message: 27/10/2006, 13h42
  3. [Tableaux] pb affichage url
    Par manplum dans le forum Langage
    Réponses: 4
    Dernier message: 09/08/2006, 14h28
  4. Réponses: 3
    Dernier message: 27/04/2006, 13h33
  5. Réponses: 9
    Dernier message: 11/12/2005, 06h06

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