Question

j'ai créé un site web en php.

Il existe une liste de titres d’histoires stockés dans la base de données. Lorsque l’utilisateur clique sur l’un des titres, l’utilisateur est redirigé vers une page contenant une chaîne de requête. comme story.php? id = 25

Cela signifie que l'histoire avec l'identifiant 25 va maintenant être affichée. Maintenant, je veux réécrire l'URL, mais quand je le réécris, il se pose un problème.

Dans la page story.php, je lis la chaîne de requête du type $ _GET ['id'] .. mais je ne parviens pas à la lire après la réécriture de l'URL. Tout organisme peut-il suggérer quoi faire

Était-ce utile?

La solution

Si vous avez apporté quelques modifications à votre chaîne d'URL, vous pouvez le faire.

http://www.domain.com/story.php?story = 25 & amp; title = nom_une

Ce qui après la réécriture pourrait être ceci.

http://www.domain.com/25/some_name.html

Code:

RewriteEngine On
RewriteRule ^story/([^/]*)/([^/]*)\.html$ /story.php?story=$1&title=$2 [L]

Autres conseils

Vous pouvez utiliser .htaccess pour réécrire le côté serveur des URL longues, sans rediriger le navigateur (il affiche donc toujours la longue URL dans la barre d'adresse), par exemple:

 RewriteEngine on
 RewriteRule story\/(\d+)\/(.+) story.php?id=$1

Faites en sorte que vos longs liens ressemblent à www.site.com/story/25/This_is_the_title

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top