htacess et variables get

Nouveau WRInaute
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:
Code:
AddType x-mapp-php5 .php
Options +FollowSymlinks 
RewriteBase /monsite/new/
RewriteEngine on
RewriteRule ^(.*)\.html$ /new/article.php?recherche=$1&ok=ok [NC] 
RewriteRule ^membre.html$ /new/membre.php?id=$1 [L]
(je précise que la premiere règle de réécriture marche)
Merci d'avance de votre aide
 
Nouveau WRInaute
salut FloBaoti,
[QSA]:
Query String Append. Rajoute le QUERY_STRING à la fin de l’expression, après la réécriture. A réserver pour la dernière règle de réécriture. Utilisée le plus souvent avec le flag [L], comme dans [QSA,L]
je l'ai rajouté seul ou avec L mais ca ne marche pas.
Maintenant j'ai une erreur SQL:
erreur sql Unknown column 'membre' in 'where clause'.
Pourtant quand je remet l'url normale dans le lien, ma page s'affiche correctement. Pourquoi le navigateur considère t il membre comme un parametre de ma requette?
 
WRInaute impliqué
Ton erreur SQL dit tout simplement que tu cherche un champ qui n'existe pas.
Dans ton WHERE, tu as quelquepart "membre='xx'", or tu n'as pas de colonne membre dans ta table.

Pour le QSA, c'est par exemple pour faire:
membre.html?variable=blabla&tralala=fff
avec membre.html qui redirige vers /new/membre.php par exemple.
 
Nouveau WRInaute
C'est sympa de m'aider ( je crois que je suis un cas désespéré...)
je viens de vérifier la requette qui permet d'afficher le formulaire pré-rempli:
Code:
	$select = "SELECT id, nom , prenom, jour, mois, an, adresse, tel, mail, code, statut FROM membres WHERE id=".$identite;
ou
Code:
$identite==mysql_real_escape_string($_GET['id']);
d'autre part si je change le lien
Code:
<a href="membre.html">
par
Code:
<a href="membre.php?<?php echo $identite?>"
ca fonctionne très bien...
Je ne comprend pas ce qui se passe...
 
WRInaute accro
je prend en compte que cette ligne marche, je vois pas l'id par contre. C'st normal ?
<a href="membre.php?<?php echo $identite?>"

>>>>>>>>>>>>>>


donc ton nouveau lien (sans marquer "id" dans l'url, je me suis basé sur l'ex du dessus):

exe : membre-25.html

Code:
<a href="membre-<?php echo $identite?>.html">

et ton htaccess

Code:
RewriteRule ^membre-([0-9]+)\.html$   /new/membre.php?$1 [L]
 
Nouveau WRInaute
désolé (erreur de frappe) mon lien normal est <a href="membre.php?id=<?php echo $identite ?>" et mon lien réécrit est membre.html
 
WRInaute accro
le lien:
Code:
<a href="membre-<?php echo $identite?>.html">

le htaccess:
Code:
RewriteRule ^membre-([0-9]+)\.html$   /new/membre.php?id=$1 [L]
 
Discussions similaires
Haut