URL Rewriting lien rompu ou introuvable

Résolu
tibou -  
Zep3k!GnO Messages postés 2025 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'ai une petite question a vous posez.
J'utilise l'URL Rewriting sur mon site
la structure de base (sans réecriture)
http://xxxx.tk/index.php?L=Fr&P=Echange&Action=Voir&Id=30
et j'aimerais que ca devienne
http://xxxx.tk/Fr/Echange/Voir/30
et parfoit ma structure de base est comme ca:
http://xxxx.tk/index.php?L=Fr&P=Echange
J'aimerais donc que ca devienne
http://xxxx.tk/Fr/Echange
Voila mon .htacces
Options +FollowSymlinks    
RewriteEngine on    
RewriteRule ([a-zA-Z\-]+)/([a-zA-Z\-]+)/([a-zA-Z\-]+)/([0-9\-]+) index.php?L=$1&P=$2&Action=$3&Id=$4 [L]    


Quand je mets http://xxxx.tk/Fr/Echange/Voir/30 cela fonctionne mais si je mets http://xxxx.tk/Fr/Echange ben il me dis que le lien est rompu
Pouvez-vous m'aider ?

cordialement Tibou
A voir également:

6 réponses

Zep3k!GnO Messages postés 2025 Date d'inscription   Statut Membre Dernière intervention   200
 
t'as essayé d'en faire un sous la forme :

RewriteRule ([a-zA-Z\-]+)/([a-zA-Z\-]+) index.php?L=$1&P=$2 [L]

sinon en gros c'est "normal" que ca ne fonctionne pas, car dans ton pattern, tu utilises des '+' (correspond à 1 ou plus) pour les groupes de caractères définis entre les crochets, il faut mettre ' * ' qui correspond à 0 ou plus, par contre il faut que ca gère dans ton script Php si tu mets des * car Action et Id seront setté a rien.

ce qui donnerait :
RewriteRule ([a-zA-Z\-]+)/([a-zA-Z\-]+)?(/[a-zA-Z\-]*)?(/[0-9\-]*) index.php?L=$1&P=$2&Action=$3&Id=$4 [L]
0
tibou
 
Merci de ta reponse mais ca ne marche toujours pas comme je le voudrais...
quand je mets ca ([a-zA-Z\-]+)/([a-zA-Z\-]+)?(/[a-zA-Z\-]*)?(/[0-9\-]*) index.php?L=$1&P=$2&Action=$3&Id=$4 [L]
je dois mettre ca comme url http://ecox.tk/Fr/Accueil//
si je ne mets pas les double slache a la fin il m'affiche une lien rompu ou introuvable toujours ...
merci de votre aide
0
tibou
 
Je me suis tromper comme ca ca marche aussi http://xxx.tk/Fr/Accueil/
Mais je dois toujours mettre un slache sinon ca ne fonctionne pas avec vous une idée ?
0
Zep3k!GnO Messages postés 2025 Date d'inscription   Statut Membre Dernière intervention   200
 
okay, j'vois le truc, j'ai merdé en écrivant la regexp, dsl, je l'avais pas testé, ça devrait le faire avec :
([a-zA-Z\-]+)/([a-zA-Z\-]+)(/[a-zA-Z\-]+)?(/[0-9]+)?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
tibou
 
Heu ok merci :) heu admeton que je mets comme url http://xxx.tk/Fr/Echange/voir/29
donc le 29 c'est l'id
mais il prends quoi comme valeur juste le 29 ou le /29 ?
parceque quand je le fais il me mets un erreur et m'affiche comme quoi l'id est incorecte
c'est un erreur de ta par ou alors dans le code je dois dire qu'il ne prenne pas en compte le / ?
0
Zep3k!GnO Messages postés 2025 Date d'inscription   Statut Membre Dernière intervention   200
 
il suffit de sortir les / des parenthèses de cette sorte :
([a-zA-Z\-]+)/([a-zA-Z\-]+)/?([a-zA-Z\-]+)?/?([0-9]+)?

;)
0