Aller au menu - Aller au contenu

[Plan du site] Vous êtes ici --- > Le Site du Zéro > Les forums > Site Web > PHP > Réécriture d'URL : /blabla affiche /index.php?vers=blabla > Lecture du sujet

Réécriture d'URL : /blabla affiche /index.php?vers=blabla

+ et lien avec problème pour récupérer $_GET['vers']

Vous devez être inscrit pour pouvoir poster des messages

Page : 1 
Auteur Message
1 visiteur sur ce sujet (1 anonyme)
Page : 1 
Hors ligne rainbowspiky # Posté le 25/07/2008 à 10:58:24
en DUT SRC -2A à Mulhouse
Avatar
Groupe : Membres
Bonjour à toutes et à tous.

J'ai du mal à rédiger l'expreg dont j'ai besoin. Je souhaite que quand on affiche la page racine/truc on affiche en fait la page racine/index.php?vers=truc. Je souhaite aussi récupérer le paramètre "vers" par $_GET['vers'].

C'est pourquoi j'ai ceci dans mon .htaccess : Code : Apache
1
2
3
# fichier .htaccess
RewriteEngine on
RewriteRule ^([0-9a-zA-Z-_,\.;:\?!]+)$ index.php?vers=$1 [L]


Pour tester cela, mon fichier index.php contient : Code : PHP
1
2
3
4
5
6
<?php
$vers = $_GET['vers'];
echo "\n\$_GET['vers'] vaut &quot;$vers&quot;";

echo "\nQUERY_STRING vaut "; print_r ($_SERVER['QUERY_STRING']);
?>

et si j'essaye racine/azertyuiop ma page m'affiche ceci : Code : Autre
1
2
$_GET['vers'] vaut "index.php".
QUERY_STRING vaut vers=index.php


En fait, ma réécriture et ma récupération de variable ne marchent que avec un "-" : racine/azertyuiop et Code : Apache
1
RewriteRule ^-([0-9a-zA-Z-_,\.;:\?!]+)$ index.php?vers=$1 [L]


Je ne veux pas de caractère avant ou après ([0-9a-zA-Z-_,\.;:\?!]+), je voudrais juste ce paramètre en clair dans l'URL.
Édité le 25/07/2008 à 11:01:02 par rainbowspiky
 
Hors ligne rainbowspiky # Posté le 12/08/2008 à 17:40:24
en DUT SRC -2A à Mulhouse
Avatar
Groupe : Membres
Hors ligne Foxi 31 # Posté le 19/08/2008 à 18:17:48
foxi31.free.fr
Avatar
Groupe : Membres
Cette réponse a aidé l'auteur du sujet Cette réponse a aidé l'auteur du sujet
Essaye ça, ça devrait t'aider un peu.
Code : Apache
1
2
3
Options FollowSymLinks
RewriteEngine on
RewriteRule ^([^.]+)$ /index.php?vers=$1 [L]
 
Hors ligne rainbowspiky # Posté le 19/08/2008 à 20:09:30
en DUT SRC -2A à Mulhouse
Avatar
Groupe : Membres
Merci, ça marche, mais uniquement pour [0-9a-zA-Z-_] apparemment.

Il n'y a pas moyen d'ajouter d'autre caractères ?
Et puis je ne comprends pas bien le [^.] (qui veut dire "PAS n'importe quel caractère").
 
Hors ligne Foxi 31 # Posté le 19/08/2008 à 20:45:26
foxi31.free.fr
Avatar
Groupe : Membres
Hors ligne Buzzcc # Posté le 19/08/2008 à 21:08:45
Groupe : Membres
Essaie plutôt ca :

RewriteRule ^(.+)$ /index.php?vers=$1 [L]
Hors ligne rainbowspiky # Posté le 19/08/2008 à 22:28:56
en DUT SRC -2A à Mulhouse
Avatar
Groupe : Membres
ça ne marche toujours pas :/

en ajoutant un caractère "séparateur" avant le point ça marche ^(-.+)$ , mais alors $_GET['vers'] vaut "-truc". Et moi je voudrais vraiment me passer d'un tel caractères "séparateur".
 
Hors ligne lolo812 # Posté le 19/08/2008 à 23:06:12
E=mc²
Avatar
Groupe : Membres
Je ne sais pas si ça va pouvoir t'aider, mais moi, j'utilise ce code là :
  • En local (localhost) :
    Code : Apache
    1
    2
    RewriteEngine on
    RewriteRule ^index.html$ index.php [L]
    
  • Sur le web (Internet) :
    Code : Apache
    1
    2
    3
    4
    5
    Options +FollowSymlinks
    RewriteEngine on
    RewriteBase /
    
    RewriteRule ^index.html$ index.php [L]
    


Après, tu peux adapter selon tes volontés, mais en tous les cas, chez moi, ça fonctionne très très bien ! :)

Bonne chance sinon ...

Lolo812.

Il faut le lire pour le croire ... o_O - Image utilisateur
"Un peu de PHP avec du HTML et du CSS avec quelques gouttes de Javascript
donne un petit site internet !
", Recette personnelle et familiale !
Image utilisateur
 
Hors ligne rainbowspiky # Posté le 21/08/2008 à 11:14:52
en DUT SRC -2A à Mulhouse
Avatar
Groupe : Membres

Retour au forum "PHP" ou à la liste des forums

Vous devez être inscrit pour pouvoir poster des messages

Changer de design | En savoir plus | Plan du site | Politique d'accessibilité | Règles | RSS tutoriels | RSS news
Édité par Simple IT SARL : Nous contacter | Notre blog | Revue de presse | Publicité

Y'a plus rien à lire, faut remonter maintenant !

Hébergement web - Correction de tutoriels - Créer un site
Vous souhaitez apparaître ici ? Contactez-nous.

Nombre de connectés 605 Zéros connectés | Requêtes SQL 7 requêtes | Temps de génération de la page : Total (SQL) 0.0343s (0.0135s)