.htaccess/mod_rewrite : ou est ma variable? - PHP - Programmation
Marsh Posté le 31-07-2007 à 14:40:18
Avec http://www.monsite.com/new/membre.html comment tu veux que ton script sache quel membre tu veux afficher ?
J'utilise pas souvent QSA mais je verrais plutôt un truc comme ça si tu veux l'utiliser :
RewriteRule ^membre.html$ /new/membre.php [QSA, L]
(ptête rajouter un "?" après "membre.php" )
Et après tu l'appelles avec membre.html?id=123 mais ça n'a pas un intérêt grandiose.
Pourquoi pas :
RewriteRule ^membre-([0-9]+).html$ /new/membre.php?id=$1 [L]
?
Ensuite t'y vas avec membre-123.html.
Marsh Posté le 31-07-2007 à 17:06:40
salut sielfried,
merci de m'aider!!!
bon alors j'ai copié ta ligne et ca marche pas avec [QSA, L]. J'ai une erreur 500.
si je met juste le drapeau [L] j'ai encore la meme erreur sql :
Citation : erreur sql Unknown column 'membre' in 'where clause' |
.
As tu une autre idée?
Marsh Posté le 31-07-2007 à 19:58:15
Vire l'espace après la virgule.
Mais là avec ton truc faudra y accéder avec membre.html?id=... hein.
Marsh Posté le 01-08-2007 à 04:08:23
tiens c'est le moment de partager une méthode différente pour l'url-rewriting avec php
dans le .htaccess, juste
Code :
|
plus le reste de la config du serveur qui va bien ...
Et ensuite, on peut appeler www.monsite.com/entry/ce_qu_on_veu [...] émentaires
le fichier d'entrée sera "entry"
et on récupère "/ce_qu_on_veut_avec/ou/sans_slash_ssupplémentaires" dans la variable $_SERVER["PATH_INFO"]
Du coup, on peut avoir une partie membre dans le site et appeler www.monsite.com/membre/new/123 ... ce qui est très joli et on a pas à de farcir la syntaxe de l'url-rewriting
EDIT: bon le message existe puisque je l'édite par contre il n'affiche rien c'est quand même super bizare
Marsh Posté le 01-08-2007 à 20:49:48
EDIT: Message de TheRom_s:
tiens c'est le moment de partager une méthode différente pour l'url-rewriting avec php
dans le .htaccess, juste
Code :
|
Du coup, on peut avoir une partie membre dans le site et appeler www.monsite.com/membre/new/123 ... ce qui est très joli et on a pas à de farcir la syntaxe de l'url-rewriting
EDIT: bon le message existe puisque je l'édite par contre il n'affiche rien c'est quand même super bizare
Marsh Posté le 03-08-2007 à 14:46:33
ViMx > La couleur elle débarque du fait qu'en C, la tilde sert à débuter et terminer les chaines de caractères. A retenir : [ code ] <> [ quote ]
nina dj >
Citation : RewriteRule ^(.*)\.html$ /new/article.php?recherche=$1&ok=ok [NC] |
veut dire que le texte correspondant au .* sera mise dans "recherche". Par exemple pour "www.monsite.com/new/membre.html" t'auras au mieux "/new/article.php?recherche=membre&ok=ok"
Citation : RewriteRule ^membre.html$ /new/membre.php?id=$2 [QSA, L] |
veut dire que les paramètres seront rajouter à la fin de l'adresse . Comme il n'y a pas de parentaise dans ta règle, $2 sera toujours vide et du coup au niveau de php, id sera toujours vide.
Au final pour l'adresse "www.monsite.com/new/membre.html?toto=12" t'auras droit à un bel "/new/membre.php?id=&toto=12".
PS : Je n'arrive plus à me rappeler si on aura "www.monsite.com/new/membre" ou juste "membre" dans le $1 de la première règle.
Marsh Posté le 31-07-2007 à 14:02:28
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:
le lien dans ma page .php est membre.html
quand je teste j'ai une erreur SQL:
erreur sql Unknown column 'membre' in 'where clause'
Pourquoi mon navigateur considère 'membre ' comme un élément de ma requette SQL et comment faire pour voir ma page normalement?