Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1639 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  url rewriting... besoin de conseils pour ma page

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

url rewriting... besoin de conseils pour ma page

n°1200401
nombril
Posté le 15-09-2005 à 14:19:51  profilanswer
 

Bonjour,
je souhaiterais utiliser la fonction reecriture d'url sous apache.
 
Je me suis renseigné vite fait et voilà mon soucis:
 
ma page catalogue.php à plusieurs URL:
 
catalogue.php
catalogue.php?id=1&debut=0
catalogue.php?debut=0&id=1&grande=2
 
voilà les 3 formes les plus présentes sur ma page.
 
donc un coup c'est id=$1&debut=$2
puis c'est debut=$1&id=$2
 
est-ce que ça peut me poser des problemes quand je vais ecrire la commande dans le fichier .htaccess ?
est-ce que je peux ecrire une ligne en fontion de ces 3 cas ou je dois modifier toutes mes url dans le code php?
 
genre:

Options +FollowSymlinks
RewriteEngine on
RewriteRule ^catalogue-([0-9]+)-([0-9]+)\.html$  catalogue.php?id=$1&debut=$2  [L]
RewriteRule ^catalogue-([0-9]+)-([0-9]+)-([0-9]+)\.html$  catalogue.php?debut=$1&id=$2&grande=$3[L]


 
En résumé, est ce que je peux faire de la réécrire avec cette forme d'url et si oui quelle est la syntaxe.
Merci :)

mood
Publicité
Posté le 15-09-2005 à 14:19:51  profilanswer
 

n°1200403
sielfried
Posté le 15-09-2005 à 14:24:29  profilanswer
 

nombril a écrit :


En résumé, est ce que je peux faire de la réécrire avec cette forme d'url et si oui quelle est la syntaxe.
Merci :)


 
Ah ben avec un résumé comme ça... [:autobot]  
 

Citation :


donc un coup c'est id=$1&debut=$2  
puis c'est debut=$1&id=$2  


 
Et ben je suppose que ça change rien du tout au niveau de la page qui s'affiche. Tu fais une règle pour chaque forme et zou.
 
Qu'est-ce qui ne va pas avec ton htaccess actuel ?


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
n°1200409
soju
One shot !
Posté le 15-09-2005 à 14:26:40  profilanswer
 

ça serait comme même plus logique de garder le même ordre dans les arguments

n°1200410
nombril
Posté le 15-09-2005 à 14:26:40  profilanswer
 

je n'en ai pas encore fais, je préfere demander des conseils pour ne pas faire de boulettes!

n°1200414
nombril
Posté le 15-09-2005 à 14:28:20  profilanswer
 

Pour l'ordre des arguments, c'est bien ce que je me disais, mais si jamais j'avais pas besoin de retravailler mon code php ça m'arrangerait...

n°1200416
sielfried
Posté le 15-09-2005 à 14:29:01  profilanswer
 

nombril a écrit :

je n'en ai pas encore fais, je préfere demander des conseils pour ne pas faire de boulettes!


 
Eh ben celui que tu nous colles c'est pas de toi ?
 
A première vue il convient, mais c'est vrai que c'est pas génial, les arguments qui ont pas toujours le même ordre.


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
n°1200420
nombril
Posté le 15-09-2005 à 14:30:16  profilanswer
 

si c'est de moi, mais je l'ai pas encore testé, je suis juste allé voir des tutos et je ne suis pas sur de moi.
Donc je vais tester, voir si celui si fontionne!

n°1200424
nombril
Posté le 15-09-2005 à 14:35:05  profilanswer
 

c'est marrant ça marche pas!

n°1200433
nombril
Posté le 15-09-2005 à 14:39:47  profilanswer
 

j'ai créé mon .htaccess avec que ça dedans:


Options +FollowSymlinks
RewriteEngine on
RewriteRule ^catalogue-([0-9]+)-([0-9]+).html$  catalogue.php?id=$1&debut=$2  [L]
RewriteRule ^catalogue-([0-9]+)-([0-9]+)-([0-9]+).html$  catalogue.php?debut=$1&id=$2&grande=$3[L]


 
Je ne vois pas pourquoi ça ne fontionne pas...
quelqu'un peu m'aider  :??:

n°1200449
sielfried
Posté le 15-09-2005 à 14:51:24  profilanswer
 

Ben si ça doit marcher.  
 
Et c'est \.html, comme dans ton premier post (même si l'affichage d'HFR a masqué les \), pas .html (même si ça l'empêchera pas de marcher).


Message édité par sielfried le 15-09-2005 à 14:52:07

---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
mood
Publicité
Posté le 15-09-2005 à 14:51:24  profilanswer
 

n°1200454
nombril
Posté le 15-09-2005 à 14:55:02  profilanswer
 

Options +FollowSymlinks
RewriteEngine on
RewriteRule ^catalogue-([0-9]+)-([0-9]+)\.html$ catalogue.php?id=$1&debut=$2 [L]
RewriteRule ^catalogue-([0-9]+)-([0-9]+)-([0-9]+)\.html$  catalogue.php?debut=$1&id=$2&grande=$3[L]


 
c'est vrai, j'avais oublié.
Mais ça ne fontionne toujours pas mieux  :(
 
il faut bien mettre que ça?


Message édité par nombril le 15-09-2005 à 14:55:25
n°1200461
sielfried
Posté le 15-09-2005 à 14:58:53  profilanswer
 

Ca marche pas, c'est-à-dire ?
 
Tu tapes quoi dans la barre d'adresse ?


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
n°1200464
nombril
Posté le 15-09-2005 à 15:01:46  profilanswer
 

Ha bin si je suis bete
je croyais que si on cliquait sur les photos du catalogue on verait une url du genre .../catalogue-1-2-3.html
 
mais en fait on voit toujours les ?id= etc

n°1200468
sielfried
Posté le 15-09-2005 à 15:06:37  profilanswer
 

Ah oui ça les liens vont pas se changer tout seuls. :spamafote:


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
n°1200471
nombril
Posté le 15-09-2005 à 15:09:15  profilanswer
 

petit hic quand meme:
si je tape
http://www.vannerie-lambert.com/catalogue-7-10-2.html
je devrais avoir cette page:
http://www.vannerie-lambert.com/ca [...] 0&grande=2
 
mais ça ne fontionne pas, il ne comprend pas le parametre grande=2

n°1200473
sielfried
Posté le 15-09-2005 à 15:10:12  profilanswer
 

T'as bien mis \. et pas . avant html ?


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
n°1200475
omega2
Posté le 15-09-2005 à 15:10:57  profilanswer
 

inverse tes deux régles, la premiére modifie l'adresse qui ne tombe donc plus dans la seconde

n°1200478
sielfried
Posté le 15-09-2005 à 15:12:12  profilanswer
 

omega2 a écrit :

inverse tes deux régles, la premiére modifie l'adresse qui ne tombe donc plus dans la seconde


 
A priori son premier masque matche pas catalogue-7-10-2.html, sauf s'il a laissé . au lieu de \.


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
n°1200480
nombril
Posté le 15-09-2005 à 15:13:37  profilanswer
 

j'ai bien mis les \
et meme en inversant les regles, il ne m'affiche pas la page comme il faut..

n°1200481
sielfried
Posté le 15-09-2005 à 15:14:25  profilanswer
 

Fout un print_r($_GET) au début de ta page.


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
n°1200483
nombril
Posté le 15-09-2005 à 15:15:12  profilanswer
 

cherchez plus, c'est encore une bétise... le [L] touchait a grande=$3
 
merci pour vos réponses, je me coucherais moins bete ce soir!

n°1200491
omega2
Posté le 15-09-2005 à 15:18:50  profilanswer
 

Je vais sembler super con là mais comment apache il défini l'ordre des régles?

n°1200497
sielfried
Posté le 15-09-2005 à 15:22:39  profilanswer
 

omega2 a écrit :

Je vais sembler super con là mais comment apache il défini l'ordre des régles?


 
Ben il les teste une par une selon leur ordre dans le fichier, a priori. [:figti]


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
n°1200502
omega2
Posté le 15-09-2005 à 15:26:55  profilanswer
 

Ben alors à priori, il devrait pas passer dans la seconde régle vu que la premiére est censé avoir modifié l'adresse.
A moins que le "[L]" à une sifgnification que je conais pas. C'est peut être pour ça que quand j'ai testé chez moi, j'avais l'adresse du fichier sur le disque et pas sur le serveur web. :lol:

n°1200506
sielfried
Posté le 15-09-2005 à 15:29:58  profilanswer
 

Le [L] lui dit de s'arrêter dès qu'une règle matche (de pas y aller en récursif avec les suivantes), si jme gourre pas.
 
Cela dit ici la première règle matche pas catalogue-7-10-2.html donc y'a pas de soucis. Et pour une url de la forme catalogue-7-10.html, la première matche mais y'a aucun risque que la seconde vienne rematcher le résultat. (C'est poétique tout ça. [:mlc] )
 
Bref ici le [L] est logique et ça évite de parser tout le fichier à chaque fois, mais j'vois pas ce que ça aurait changé sans, pour le coup.


Message édité par sielfried le 15-09-2005 à 15:30:38

---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
n°1200518
omega2
Posté le 15-09-2005 à 15:45:23  profilanswer
 

Ha ben oui, la premiére régle ne veut aucun caractére entre le second nombre et le .html . :D Suis-je bête parfois à lire trop vite. :lol:

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  url rewriting... besoin de conseils pour ma page

 

Sujets relatifs
[apache] url rewriting avec _pb mise en page CSS
a:hover pas appliqué sur l'ensemble de la page[RESOLU]Insérer une page word dans une fichier html
Forcer l'affichage durant un chargement de page php!Retour à la ligne sous IE qui sabote la mise en page.
Liens paramètré vers une page de cadres ?Comment passer un chiffre a virgule sur une autre page?
Besoin d'aide pour Javascript BBCode[Résolu] J'ai besoin d'aide pour quelques base.
Plus de sujets relatifs à : url rewriting... besoin de conseils pour ma page


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR