2010-12-13 11 views
1

Dans JSP utilisant tomcat, je peux spécifier un répertoire à utiliser dans un gestionnaire de servlet et utiliser le nom du fichier comme paramètre. EST-il possible de le faire en PHP?Gestionnaire de page générique PHP

Le but de ce dans ce cas est que j'ai un magasin, de sorte que tous les produits sont de la forme

shop_view.php?cat=3 
shop_detail.php?id=432 

et bien que ceux qui travaillent, et je ne cherche pas à éliminer ceux entièrement, ce serait bien lors de la fourniture de liens vers un produit à des personnes pour donner des liens tels que

products/bottle_brush 
categories/accessories 

que je pourrais facilement consulter à partir de la base de données. Si seulement je pouvais attraper les répertoires produits/* et catégories/*

+0

Qu'est-ce que le logiciel serveur êtes-vous? Apache? –

+1

Cela ressemble à un travail pour Apache [mod_rewrite] (http://httpd.apache.org/docs/1.3/mod/mod_rewrite.html). –

+0

c'est sur Apache oui, je vais devoir vérifier ce qui est disponible. – Woody

Répondre

1

Vous devez d'abord stocker les limaces de produits et de catégorie avec le produit dans la base de données et assurez-vous qu'ils sont uniques (si nécessaire) .

Ensuite, vous avez besoin de mettre en œuvre les demandes shop_detail.php? Limace = bottle_brush et shop_view.php? Cat = accessoires

Enfin, si vous utilisez Apache et le module mod-rewrite est activé, vous pouvez utiliser la htaccess pour réécrire vos URL (ne pas tester cela, reportez-vous à la documentation et des tutoriels mod_rewrite .htaccess):

RewriteEngine On 
RewriteCond %{HTTP_HOST} ^products\/(.+)$ [NC] 
RewriteRule ^(.*)$ shop_detail.php?slug=$1 [R,L] 
+0

merci pour cette info. Je vais vérifier si je peux utiliser mod_rewrite. Je n'ai jamais réalisé que c'est ce qu'il pouvait faire! – Woody

1
+0

La plus courte réponse jamais. Il serait certainement plus détaillé d'être accepté à mon humble avis. De toute façon, vous pouvez développer un exemple avec '.htaccess' (comme nous ne savons pas s'il a eu accès à _httpd.conf_) – Shikiryu

+0

il n'a pas besoin de taper quoi que ce soit plus long - cliquez sur mod_rewrite et cela vous amène au manuel. – DreamWave

+0

merci pour l'info, j'ai donné la réponse pour la section 'comment utiliser' ci-dessous, car il a couvert un peu mieux, mais j'apprécie quand même – Woody