url rewriting fiche.php?id=12 en nom du film.html

  • Auteur de la discussion Auteur de la discussion Anonymous
  • Date de début Date de début
A
Anonymous
Guest
Merci beaucoup je teste dessuite

pour remplacer le nom-du-film

mon champ dans la base c titre

Je rajoute lien ( le champ ki vas identifier le nom du film dans ma base ?

resutlat concret
RewriteRule ^telecharger-torrent-nom-du-film-([0-9]+)\.html$ /fiche.php?id=$1 [QSA,L]

telecharger-torrent-toto-4.html

4 = id du film
toto = nom du film ( champ dans la base =titre)
 
A
Anonymous
Guest
ca marche mais ca le fais pas a la volé.

telecharger-torrent-nom-du-film-12.html

affiche bien mais le probléme c'est que ce n'est pas la volé.
 
WRInaute passionné
si:

4 = id du film
toto = nom du film ( champ dans la base =titre)

alors:
Code:
RewriteRule ^telecharger-torrent-([a-zA-Z]+)-([0-9]+)\.html$ /fiche.php?nomdufilm=$1&id=$2 [QSA,L]
si nom-du-film ne contient pas de tiret, sinon:
RewriteRule ^telecharger-torrent-([-a-zA-Z]+)-([0-9]+)\.html$ /fiche.php?nomdufilm=$1&id=$2 [QSA,L]
si nom du film contient underscore alors:
RewriteRule ^telecharger-torrent-([a-zA-Z_]+)-([0-9]+)\.html$ /fiche.php?nomdufilm=$1&id=$2 [QSA,L]
etc...
 
A
Anonymous
Guest
la je viens de tester, mais ca ne fais pas de recriture a la volé.

telecharger-torrent-$titre-$id.html

$titre = le nom du film
$id= l'id du film

Si on peux eviter de mettre l'id tant mieux.
 
WRInaute occasionnel
Juste histoire d'éclaircir rapidement un petit point qui me parait flou : ce n'est pas le .htaccess qui va s'occuper d'aller lire le titre du film dans la base.

Ce n'est pas non plus lui qui va changer la façon dont apparaissent les lien sur ton site : je veux dire, si ton script php affiche une URL non ré-écrite, ce n'est pas le .htaccess qui le fera à ta place.

Il faut donc que :
1_ Ton script PHP soit capable d'afficher l'url rewritée et non celle avec fiche.php?machin=truc&bidule=numéro
2_ Si tu veux passer uniquement le nom du film dans l'url, alors c'est ton script doit faire la requête dans ta base.

J'ai l'impression que tu penses qu'il suffit de modifier le .htaccess alors qu'il va te falloir modifier le script aussi.
 
A
Anonymous
Guest
j'ai bien modifier mon script la recriture est bien faite a la volé cela donne

http://www.exemple.com/telecharger-torr ... nd-12.html

probléme c'est que dans le .htaccess j'ai ca

RewriteEngine on
RewriteRule ^telecharger-torrent-([a-zA-Z]+)-([0-9]+)\.html$ /fiche.php?nomdufilm=$1&id=$2 [QSA,L]


et que cela ne marche pas.

car avant je ne récupérer pas $titre et maintenant oui
faudrais arriver a placer $titre avant $id mais ne je sais pas ou le mettre dans le .htaccess
 
WRInaute occasionnel
Sérieusement je ne comprends rien à ton problème. En fait, je n'arrive pas à savoir :
* où tu en es exactement
* ce qui ne marche pas précisément (et "comment" ça ne marche pas, c'est à dire qu'est-ce que ça devrait faire et qu'est-ce que ça fait à la place)

Normalement, avec ton .htaccess suivant (note l'ajout d'un tiret dans [-a-zA-Z] sinon tu n'as pas les titres composés de plusieurs mots et effectivement ça ne fonctionnera pas) :
Code:
RewriteEngine on
RewriteRule ^telecharger-torrent-([-a-zA-Z]+)-([0-9]+)\.html$ /fiche.php?nomdufilm=$1&id=$2 [QSA,L]

Tu dois, en tapant une adresse du style
-http://www.example.com/telecharger-torrent-the-island-12.html

récuperer dans ton index.php les variables $_GET['nomdufilm'] qui devrait contenir 'the-island'
et $_GET['id'] qui devrait contenir la valeur 12

Est-ce que tu peux confirmer que le index.php est bien appelé ? s'il l'est bien, les variables indiquées sont-elles vides ?

J'ai du mal à comprendre à quel point précis ça ne marche pas, en fait, pour pouvoir avoir de l'aide simplement, il faut éviter les phrase du type "ça marche pas", il faut être plus précis.
 
WRInaute passionné
istreen a dit:
Code:
RewriteEngine on
RewriteRule ^telecharger-torrent-([a-zA-Z]+)-([0-9]+)\.html$ /fiche.php?nomdufilm=$1&id=$2 [QSA,L]

et le tiret? il est ou le tiret?

RewriteEngine on
RewriteRule ^telecharger-torrent-([-a-zA-Z]+)-([0-9]+)\.html$ /fiche.php?nomdufilm=$1&id=$2 [QSA,L]

il est assez gros maintenant? :wink:
 
A
Anonymous
Guest
J'ai mis ca

Code:
RewriteEngine on
RewriteRule ^telecharger-torrent-([-a-zA-Z]+)-([0-9]+)\.html$ /fiche.php?nomdufilm=$1&id=$2 [QSA,L]

et cela ne marche pas.
 
A
Anonymous
Guest
Voila la solution

RewriteEngine on
RewriteRule ^telecharger-torrent-.*-([0-9]+)\.html$ /fiche.php?id=$1 [L]
 
A
Anonymous
Guest
Bonjour, j'ai changé d'avis suite a un conseil pour le ref ,j'aimerais avoir
www.exemple.com/iznogoud-32.html

RewriteRule ^telecharger-torrent-.*-([0-9]+)\.html$ /fiche.php?id=$1 [L]

voila ce que j'ai actuellemnt et ki marche mais avec l'ancienne methode.

si je fais ca

RewriteRule ^.*-([0-9]+)\.html$ /fiche.php?id=$1 [L]

ca bug complétement :p
 
Discussions similaires
Haut