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

Apache Discussion :

Comment Récupérer l'URI dans ma requête ?


Sujet :

Apache

  1. #1
    Membre du Club
    Inscrit en
    Octobre 2003
    Messages
    99
    Détails du profil
    Informations forums :
    Inscription : Octobre 2003
    Messages : 99
    Points : 46
    Points
    46
    Par défaut Comment Récupérer l'URI dans ma requête ?
    Salut !

    Voici le contenu de mon fichier HTACCESS placé à la racine de mon site web:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Options +FollowSymLinks
    RewriteEngine On
    RewriteRule ^(.*)/vmeetings/(.*)/(.*)$ recordattendance.php?room=$1&meeting=$2&rem=$3 [L]
    Je voudrais juste que le paramètre $3 contienne l'URI complète (avec les paramètres dans l'URL).

    Actuellement il ne prend que le nom du fichier appelé, par exemple "vshow.php" avec l'url ci-dessous:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    http://www.monsite.com/Room_Name/vmeetings/meeting0001/vshow.php
    Il semble qu'on peut le récupérer avec

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RewriteCond %{REQUEST_URI}
    Comment y arriver ?

    Merci

    Stéphane

  2. #2
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    Vu ton expression régulière, c'est normal que $3 ne contienne que le nom du script appelé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ^(.*)/vmeetings/(.*)/(.*)$
                           ^
                           $3
    Pour ton truc, essaie avec $0, mais le pb c'est que pour le passer en paramètre proprement, il faudrait encoder la valeur.

  3. #3
    Membre du Club
    Inscrit en
    Octobre 2003
    Messages
    99
    Détails du profil
    Informations forums :
    Inscription : Octobre 2003
    Messages : 99
    Points : 46
    Points
    46
    Par défaut
    Lorsque je fais l'url suivante, le paramètres (email=...) n'apparait pas dans $0

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    http://www.ruby8studio.com/Room_Name/vmeetings/meeting0001/vshow.php?email=dsfdf@gh.com
    Or c'est exactement ce paramètre que je veux répérer !

    En clair je veux savoir comment récupérer en $3 le texte après "email="

    Merci pour votre aide

  4. #4
    Membre expérimenté
    Avatar de Linaa
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    987
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 987
    Points : 1 309
    Points
    1 309
    Par défaut
    Bonjour,

    Utilisant PHP, tu peux récupérer les parametres de la page avec $_GET["parametre"]
    Tu peux aussi récuperer un tableau contenant les parametre avec $_SERVER["argv"] (chaque ligne contenant par exemple : "param1=valeur1", "param2=valeur2"). Il suffit ensuite de faire un split sur = du résultat pour récuperer la valeur.

  5. #5
    Membre du Club
    Inscrit en
    Octobre 2003
    Messages
    99
    Détails du profil
    Informations forums :
    Inscription : Octobre 2003
    Messages : 99
    Points : 46
    Points
    46
    Par défaut
    Mon problème est que je dois utiliser un HTACCESS pour rediriger ce paramètre vers une autre adresse. Je ne peux pas utiliser PHP, sinon je l'aurais fait puisque qu'en PHP cela serait plus facile !

    Ce que je veux faire c'est récupérer l'email après "email=" dans l'url suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    http://www.site.com/Room_Name/vmeetings/meeting0001/vshow.php?email=dsfdf@gh.com
    en utilisant le fichier HTACCESS avec le contenu suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Options +FollowSymLinks
    RewriteEngine On
    RewriteRule ^(.*)/vmeetings/(.*)/(.*)$ recordattendance.php?room=$1&meeting=$2&email=$3 [L]
    L'email doit être dans $3

    Vous avez une idée ?

    Stéphane

  6. #6
    Membre expérimenté
    Avatar de Linaa
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    987
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 987
    Points : 1 309
    Points
    1 309
    Par défaut
    Dans ton exemple, $3 contient vshow.php?email=dsfdf@gh.com !

    Et en essayant comme ceci ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RewriteRule ^(.*)/vmeetings/(.*)/vshow[.]php[?]email=(.*)$ recordattendance.php?room=$1&meeting=$2&email=$3 [L]
    Remarque : Il faut echapper le point et le point d'interrogation, qui sont des caractères spéciaux

Discussions similaires

  1. Comment récupérer les valeurs dans une requête
    Par JeanNoel53 dans le forum JDBC
    Réponses: 23
    Dernier message: 30/04/2015, 20h02
  2. Réponses: 3
    Dernier message: 07/10/2011, 05h44
  3. [MySQL] Comment récupérer 2 lignes dans 1 requête
    Par dldstyle dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 02/09/2008, 16h50
  4. [MySQL] Comment récupérer le résultat d'une requête dans PHP
    Par zouzino dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 10/11/2007, 22h53
  5. comment récupérer une donnée dans une requête
    Par valerie02 dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 13/06/2007, 23h20

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