| |
|
Voir le sujet précédent :: Voir le sujet suivant
|
| Auteur |
Message |
| |
|
v2mnet Nouveau WRInaute
Inscrit le: 09 Sep 2004 Messages: 2 Localisation: Colombes (92700)
|
Posté le : Mer Fév 16, 2005 21:49 Sujet du message: Url-rewriting avec nom des catégories et des produits |
|
|
Bonjour,
Je souhaite pouvoir ré-écrire les 4 urls suivantes comme suit :
www.host.com/boutique/achat/index.php?ref=56
www.host.com/achat-nomcategorie-ref-56.html
www.host.com/boutique/achat/index.php?ref=56&start=10&shift=0
www.host.com/achat-nomcategorie-ref-56-start-10-shift-0.html
www.host.com/boutique/achat/produit_details.php?ref=123
www.host.com/achat-nomproduit-ref-123.html
www.host.com/boutique/contacts.php
www.host.com/boutique/contacts.html
la base MySQL contient une base catégories avec les champs id et nom
la base MySQL contient une base produits avec les champs id et nom
A ce jour, je pense utiliser une fonction url_rewrite($url) et le fichier .htaccess ci-dessous mais comment les modifier :
fichier .htaccess :
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^(.*)(-.+)-([^-]+)-([^-&]*)([^-]*)\.html$ $1$2&$3=$4$5\.html [N]
RewriteRule ^(.*)-([^-]+)-([^-]*)(.*)\.html$ $1.php?$2=$3$4 [L]
RewriteRule ^(.*).html$ $1.php [L]
function url_rewrite($url) {
if (eregi("(.*).php(.*)",$url,$regs)) {
$monurl = $regs[1];
$geturl = $regs[2];
while (eregi("(.*)(\?|&)([^=]+)=([^=]*)(.*)",$geturl,$regs)) {
$geturl = $regs[1]."-".$regs[3]."-".$regs[4].$regs[5]; }
$url = $monurl.$geturl;
}
elseif(eregi("(.*).php",$url,$regs)) {
$url = $regs[1];
}
return $url . ".html" ;
}
1- Quelles règles .htaccess dois-je modifier pour que les 4 urls soient rewritées ?
2- Comment intégrer ma fonction nomcategorie = nom_catégorie($ref) dans mes règles ?
3- Quelle fonction utiliser pour nettoyer nomcategorie et créer une url propre, c-a-d lui enlever les majuscules, les accents, les caractères étranges ?'>!"()[];:,.$%{} etc... ?
Merci par avance pour votre aide.
Jean-Michel |
|
| |
|
 |
| |
|
|
|
|
Autres sujets de discussion :
|
|