FiP_ Posté(e) le 16 août 2006 Partager Posté(e) le 16 août 2006 Sur mon blog (fait main), il va falloir que je revise la maniére dont les addresses (url) de mon site sont analysées. j'aimerai que les adresses suivantes fonctionnent: index index/blog index/blog/2006 index/blog/2006/08 index/blog/2006/08/le_message index/articles index/articles/2006 index/articles/2006/08 index/articles/science index/articles/science/informatique index/articles/science/informatique/windows_2000 index/liens Elles sont, je pense, suffisament claires pour que vous compreniez ce que le site doit afficher à chaque fois... si seuls 'blogs' et '2006' sont précisés, je veux la liste des billets de type 'blog', pour l'année 2006. Si le mois est précisé, je veux ceux de mai 2006. (pas de tri par jour) J'ai un soucis en ce qui concerne les parametres 'texte', comme le nom des catégories et le titre d'un billet/article/autre: le code php va devoir vérifier que cette catégorie, ou que cet article, existe bel et bien. Mais je ne pense pas vouloir mettre le titre directement dans l'adresse: il pourrait y avoir des caracteres spéciaux, ou simplement des espaces, qui seront transformés en "%20". J'avais pensé, à un moment, à faire en sorte que les titres soient de la forme "xx - le titre", en ne prenant en compte que l'id, le 'xx', pour rechercher le billet. Avec cette méthode malheureusement, rien empecherait l'un de vous de demander, par exemple, l'adresse "index/blog/2006/08/12-ta_mere_est_une_", qui afficherai un billet valide, le 12, mais avec des profanités dans la barre d'adresse. Il me faut donc un nom "à afficher" et un nom "safe for web"... Devrais-je conserver deux noms dans la base de données, ou trouver une fonction qui transformerai un titre en texte "safe" ? L'ennui, avec l'utilisation d'une fonction, c'est que la transformation doit être reversible: lorsque le code analyse l'adresse donnée, il devra chercher dans la base de données, avec le vrai nom.. Je pourrais m'inspirer de wikipedia, qui transforme les "évenements de l'année 2006" en "%C3%89venements_de_l%27ann%C3%A9e_2006"... ____________________ Par curiosité, je me suis demandé comment Dotclear faisait, et la réponse et simple: http://petit.dotclear...02-dotclear-c-est-vraiment-nul j'ai l'algorithme dans la peau Lien vers le commentaire Partager sur d’autres sites More sharing options...
koskoz Posté(e) le 17 août 2006 Partager Posté(e) le 17 août 2006 Si tu ne fais pas d'url rewriting, il va forcement te rester index.php? dans ton url, après par contre tu peux "habiller" les différents paramètre sans url rewriting directement via php, mais je n'ai pas encore approfondi la question. Lien vers le commentaire Partager sur d’autres sites More sharing options...
FiP_ Posté(e) le 21 août 2006 Auteur Partager Posté(e) le 21 août 2006 Si tu ne fais pas d'url rewriting, il va forcement te rester index.php? dans ton url Heu non, pour le moment sur mon site on peut écrire .../index.php/truc [edit : il me semble qu'il s'agit là d'une fonctionnalité d'Apache.] , et recupérer truc dans le code d'index.php Je peux même n'écrire que .../index/truc :) //page demandée: list ($debut,$a,$b,$c,$d,$fin) = preg_split('/\//i', $_SERVER["REQUEST_URI"], 6, PREG_SPLIT_NO_EMPTY); $a = clean($a); $b = clean($b); $c = clean($c); $d = clean($d); unset($debut); unset($fin); //page par défaut $a = isset($a) ? $a : 'accueil'; Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.