Url rewriting, est-ce possible ?

WRInaute discret
Bonjour tout le monde,

J'ai une petite question personnelle ou je n'ai pas vraiment trouvé la réponse qui me satisfait.

J'ai un système d'article ou j'ai des liens de ce type : http://.....URL.../news.php?id=6

J'aurais voulu connaître la marche à suivre si c'est possible pour faire en sorte que j'arrive à ce type de résultat.

http://.....URL...../news-nom-de-la-news-idnews.html

ou

http://.....URL...../news/nom-de-la-news-idnews.html

Par la suite j'aimerais faire quelque chose de similaire avec des articles plus profond que des simples news, le système serait identique mais il me faut connaître le moyen de pouvoir réaliser cela.

Pour ceux qui n'aurait pas vraiment situer mon souci c'est que je sais faire : http://.....URL...../news-idnews.html mais je suis incapable pour le moment d'y insérer le nom du sujet. Et puis c'est surtout pour savoir si c'est possible ou si je dois rajouter une variable GET ressemblant à cela : http://.....URL.../news.php?id=6&titre=nom-de-la-news



Je vous remercie d'avance et m'excuse si un sujet similaire aurait été posté mais je préfère demander avec mes données personnelles.

Mikaweb
 
WRInaute accro
Pas besoin de variable supplementaire GET. Puisque tu as l'ID tu as le reste. Te suffit de faire une requete au depart pour trouver le nom:

Code:
SELECT nom FROM table WHERE id=$id;

apres une fois que tu as le nom tu le met dans ton lien.

Code:
<a href="http://.....URL...../$nom-$id.html ">

****************

Tu peux egalement ne pas mettre l'ID de la news dans l'url, et a l'arrivée tu fais 1 requete sur le nom

Code:
SELECT * FROM table WHERE nom='$nom';
 
WRInaute accro
Oui c'est vrai, mais il y a de toute façon une manip supplémentaire à faire au départ pour inclure dans l'URL les mots souhaités. C'est un peu ça que je voulais dire.
 
WRInaute discret
Bon cela fonctionne mais cela à ses limites, je m'explique.
Je tiens aussi à préciser que c'est que du travail en local pour mon rewrite d'URL.

Donc j'ai créé une news qui se nomme Test tiny
Quand je veux la modifier, j'y ai appliqué une règle de rewrite ce qui donne cela : modifier-news-1-test-tiny.html

Code:
RewriteRule ^modifier-news-([0-9]+)-([-a-z]*)\.html$ rediger_news.php?modifier_news=$1 [L]
Le souci est que lorsque je rentre ceci dans la barre d'adresse : modifier-news-1-mia.html

J'arrive toujours sur la même news. :? et ce qui me dérange c'est que le mia reste au lieu d'être changé tout seul par le nom correct...
Je me suis aperçu que ce qui comptait c'était uniquement l'id, si je change le 1 en 5 j'atterirais sur la news 5.
Je sais que sur un site, www.fcbarcelonaclan.com, qui utilise un procédé similaire à celui que je veux faire...

news,giovani-dos-santos-sera-espagnol-avant-que-la-liga,5842.html

Ici si on enlève : giovani-dos-santos-sera-espagnol-avant-que-la-liga ou qu'on met simplement 85 à la place on sera automatiquement redirigé sur la bonne adresse qui est la première que je vous ait donnée.

J'aurais voulu savoir comment je pouvais arriver à un tel résultat ?

Autre question concernant le nombre de caractère maximum dans la barre d'adresse, comment faire pour tronquer des caractères si il y en a trop, par exemple en définir une cinquantaine mais pas plus.


Un grand merci :wink:
 
WRInaute accro
ben oui, tu bases tout sur l'identifiant passé en paramètre donc c'est le seul pris en compte pour déterminer le contenu qui s'affichera, c'est logique.

Je ne vois pas en quoi ce que tu indiques comme "limite" te dérange ???

Si tu veux échapper à celà, il te faut, sur la page d'arrivée, faire un test pour voir si l'url appelée est bien ce que tu attendais et si ce n'est pas le cas faire une redirection 301 vers celle que tu veux, mais je ne vois pas bien l'utilité;
 

➡️ Offre MyRankingMetrics ⬅️

pré-audit SEO gratuit avec RM Tech (+ avis d'expert)
coaching offert aux clients (avec Olivier Duffez ou Fabien Faceries)

Voir les détails ici

coaching SEO
Discussions similaires
Haut