Transformer monsite.com/page.php?zob=X en monsite.com/page/X

Consultez la formation URL Rewriting et sites dynamiques de WebRankInfo / Ranking Metrics

FrenchKiss
WRInaute discret
WRInaute discret
 
Messages: 187
Inscription: 6 Oct 2004

Transformer monsite.com/page.php?zob=X en monsite.com/page/X

Message le Jeu Avr 07, 2005 15:52

Hello à tous
Je cherche à trouver une règle de réécriture qui pourrait rediriger
.com/lexique/mot vers la page .com/lexique.php?word=mot ...


Des idées ? Là je patauge un peu, et j'ai peur de créer des failles de sécurité.
Pour l'instant j'ai fait ça
Code: Tout sélectionner
RewriteRule ^lexique.php/([a-z]*)* lexique.php?word=$1

Mais ça foire complet, ça me fait complètement sauter mes styles CSS ...
Dernière édition par FrenchKiss le Jeu Avr 07, 2005 16:09, édité 1 fois.


sietjp
WRInaute impliqué
WRInaute impliqué
 
Messages: 624
Inscription: 14 Déc 2003

Message le Jeu Avr 07, 2005 16:00

Je suis pas sûr, mais peut être que tes fichiers de styles il va les chercher maintenant dans le répertoire .com/lexique/ alors qu'ils sont à la racine. Soit tu vas les chercher à la racine avec ../ soit tu fais une redirection pour tes feuilles de styles.

FrenchKiss
WRInaute discret
WRInaute discret
 
Messages: 187
Inscription: 6 Oct 2004

Message le Jeu Avr 07, 2005 16:01

ou alors je les mets en chemin absolu
merci j'essaie ça de suite, je te tiens au courant

FrenchKiss
WRInaute discret
WRInaute discret
 
Messages: 187
Inscription: 6 Oct 2004

Message le Jeu Avr 07, 2005 16:04

C'est bon, nickel, j'ai mes CSS qui sont de retour... Merci beaucoup :)

Maintenant, seul (GROS) problème, la variable transmise... comment la récupérer ? En effet, $_GET['word']) ne me ramène plus rien ... forcémment.
Donc du coup, je me retrouve avec une page "vide", comment faire pour récupérer cette fameuse variable word, dont la valeur est maintenant
lexique/mot

Des idées ?


sietjp
WRInaute impliqué
WRInaute impliqué
 
Messages: 624
Inscription: 14 Déc 2003

Message le Jeu Avr 07, 2005 16:17

Il faudrait enlever le .php dans ta règle, ça marchera peut être
Code: Tout sélectionner
RewriteRule ^lexique/([a-z]*)* lexique.php?word=$1

FrenchKiss
WRInaute discret
WRInaute discret
 
Messages: 187
Inscription: 6 Oct 2004

Message le Jeu Avr 07, 2005 18:14

Yes, j'avais déjà pris l'initiative de corriger ce petit détail, merci :wink:
Ceci dit, je n'arrive tjs pas à récupérer la variable... Personne pour m'éclairer ?


sietjp
WRInaute impliqué
WRInaute impliqué
 
Messages: 624
Inscription: 14 Déc 2003

Message le Ven Avr 08, 2005 9:49

Essaie d'enlever le * ? (en plus il faut que ta variable soit uniquement composé de lettres minuscules avec cette règle)
Code: Tout sélectionner
RewriteRule ^lexique/([a-z]*) lexique.php?word=$1

FrenchKiss
WRInaute discret
WRInaute discret
 
Messages: 187
Inscription: 6 Oct 2004

Message le Ven Avr 08, 2005 10:56

Ok j'ai essayé, mais ma variable n'est toujours pas reconnue par le script de ma page :/
En revanche, j'ai un doute sur ma règle : que devraisje faire pour pouvoir permettre AUSSI les chiffres dans cette fichue variable ?

FrenchKiss
WRInaute discret
WRInaute discret
 
Messages: 187
Inscription: 6 Oct 2004

Message le Sam Avr 09, 2005 0:08

Mince, j'ai posé la question qui tue ? :wink:
Personne pour me sortir de mon pétrin de débutant ?


cdpdf
WRInaute impliqué
WRInaute impliqué
 
Messages: 953
Inscription: 11 Mar 2003

Message le Sam Avr 09, 2005 0:19

peut etre avec
$word=$HTTP_GET_VARS['word'];

FrenchKiss
WRInaute discret
WRInaute discret
 
Messages: 187
Inscription: 6 Oct 2004

Message le Sam Avr 09, 2005 14:05

:? Non ça ne passe tjs pas désolé :/
Merci de ton aide malgré tout...


cdpdf
WRInaute impliqué
WRInaute impliqué
 
Messages: 953
Inscription: 11 Mar 2003

Message le Sam Avr 09, 2005 14:26

c'est étonnant car chez moi cela fonctionne sans problème.
fait un peu
if (isset($HTTP_GET_VARS['word']){
echo "undeuxtrois";
}

FrenchKiss
WRInaute discret
WRInaute discret
 
Messages: 187
Inscription: 6 Oct 2004

Message le Sam Avr 09, 2005 15:02

Code: Tout sélectionner
if (isset($HTTP_GET_VARS['word'])){echo "undeuxtrois";}
else {echo "ben non";}
m'affiche "ben non" :(
Je précise que la version php est la 4.3.10 ...
phpinfo

Je rappelle ma règle de réécriture :
Code: Tout sélectionner
RewriteEngine On
RewriteRule ^lexique/([a-z]*) lexique.php?word=$1


cdpdf
WRInaute impliqué
WRInaute impliqué
 
Messages: 953
Inscription: 11 Mar 2003

Message le Sam Avr 09, 2005 15:16

je ne sais plus quoi te dire à part de peut etre changer ton .htaccess
RewriteRule ^lexique/([a-zA-Z]*)$ /lexique.php?word=$1

ce qui est bizare c'est que -http://www.frenchtouchseduction.com/lexique/lexique/lexique/lexique/lexique.php?word=beginner
cela fonctionne sans problème

FrenchKiss
WRInaute discret
WRInaute discret
 
Messages: 187
Inscription: 6 Oct 2004

Message le Sam Avr 09, 2005 16:38

Effectivement c'est pour le moins étrange :/
en revanche, si j'essaie
.com/lexique/beginner, je retombe sur la liste des entrées du lexique, signe que la variable word, normalement =beginner, est vide ...
(même avec la règle que tu me proposes, que j'ai utilisée pour mon .htaccess) ... J'y comprends rien :/

Transformer monsite.com/page.php?zob=X en monsite.com/page/X

Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Formation recommandée sur ce thème :

Formation URL Rewriting et sites dynamiques : apprenez comment mettre en place la réécriture d'URL, comment optimiser vos URL et profiter de vos pages dynamiques pour booster votre référencement. Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités