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 :

[URL Rewriting] mais où est ma variable ?


Sujet :

Apache

  1. #1
    Invité
    Invité(e)
    Par défaut [URL Rewriting] mais où est ma variable ?
    bonjour à tous,
    pour mon site j'aimerais utiliser l'url rewriting. J'ai une page qui affiche un formulaire pré-rempli en fonction des données de ma base affin que les membres puissent midifier leurs infromations. l'url normale de cette page est : www.monsite.com/new/membre.php?id=123 et je voudrais avoir:
    www.monsite.com/new/membre.html
    pour l'instant je retrouve bien ma page à www.monsite.com/new/membre.html mais le formulaire n'est pas prérempli (en fait ma variable ne pass plus) et j'ai une belle erreur SQL
    voila mon fichier.htaccess:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    AddType x-mapp-php5 .php
    Options +FollowSymlinks 
    RewriteBase /monsite/new/
    RewriteEngine on
    RewriteRule ^(.*)\.html$ /new/article.php?recherche=$1&ok=ok [NC] 
    RewriteRule ^membre.html$ /new/membre.php?id=$1 [L]
    (je précise que la premiere règle de réécriture marche)
    Merci d'avance de votre aide

  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
    Ca me paraît normal : dans l'expression ^membre.html$, il est où le token $1 ?

  3. #3
    Invité
    Invité(e)
    Par défaut
    salut _Mac_ et merci de m'aider.
    j'ai essayé de suivre ton conseil et j'ai mis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RewriteRule ^membre-([0-9]+)\.html$ /new/membre.php?id=$2 [L]
    et je me retrouve avec la meme erreur SQL......
    Dernière modification par Invité ; 31/07/2007 à 17h12.

  4. #4
    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
    Citation Envoyé par nina_bee
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RewriteRule ^membre-([0-9]+)\.html$ /new/membre.php?id=$2 [L]
    J'ai dit ça ??? Relis bien : je dis juste que si tu veux utiliser un $1, il faut un bloc entre (), ce qui n'est pas le cas dans ce que tu donnes (RewriteRule ^membre.html$ /new/membre.php?id=$1 [L]).

    Bref, avec une expression ^membre-([0-9]+)\.html$, tu n'as qu'un seul bloc entre (), donc pour le référencer, il faut utiliser $1 et pas $2 (qui serait le second bloc mais il n'existe pas). D'où :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    RewriteRule ^membre-([0-9]+)\.html$ /new/membre.php?id=$1 [L]
                        +------+
                           $1

Discussions similaires

  1. Réponses: 6
    Dernier message: 21/05/2010, 17h40
  2. [URL rewriting] Vérifier la présence d'une variable d'URL
    Par MatthieuFourcade dans le forum Apache
    Réponses: 2
    Dernier message: 15/02/2010, 17h32
  3. [URL rewriting] Site qui n'est pas à la racine
    Par dkmatt dans le forum Apache
    Réponses: 11
    Dernier message: 07/04/2009, 01h10
  4. Réponses: 7
    Dernier message: 10/07/2008, 01h52
  5. Réponses: 7
    Dernier message: 20/12/2007, 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