Bonjour !
Je viens solliciter votre aide pour un problème de re-écriture d'URL.
J'ai un site avec une seul page gérant plusieurs contenus : ma page index.php affiche tous les articles, mais aussi seulements les articles d'une certaine categorie, ou enfin, un seul article.
J'aimerais avoir ce genre d'URL :
www.mon-site.com/ (accueil, affichant tous ... )
www.mon-site.com/category/humour/ (affiche seulement les films de la categorie choisie)
www.mon-site.com/article/asterix-et-obelix-mission-cleopatre (affiche le film choisi )
Certe, ce n'est pas optimisé mais c'est à la demande de ce "cher" client ...
Pourriez vous m'aider à établir les règles de mon htacces ?
Voila un petit code a faire,
Exemple de lien : monsite.com/index.php/le-reste-de-mon-lien-separer-les-elements-avec-une-slash
<?php
$query = isset($_SERVER'PATH_INFO']) ? $_SERVER'PATH_INFO'] : false;
$params = explode('/', trim($query, '/'));
$request = array();
$request'type'] = (isset($params[0])) ? $params[0] : '';
$request'elem'] = (isset($params[1])) ? $params[1] : '';
if(empty($request'type'])){
// accueil, affichant tous ...
/*
$request'type'] est vide
*/
}
elseif($request'type'] == 'category'){
if(!empty($request'elem'])){
// affiche seulement les films de la categorie choisie
/*
www.mon-site.com/index.php/category/humour
$request'type'] = 'category';
$request'elem'] = 'humour';
*/
}
}
elseif($request'type'] == 'article'){
if(!empty($request'elem'])){
// affiche le film choisi
/*
www.mon-site.com/index.php/article/asterix-et-obelix-mission-cleopatre
$request'type'] = 'article';
$request'elem'] = 'asterix-et-obelix-mission-cleopatre';
*/
}
}
?>
Et si tu veux de ne pas afficher le index.php dans l'url, utiliser un fichier htaccess avec le code suivant
RewriteEngin On
RewriteRule (.*) index.php/$1 [L]