Titre: lines dynamiques... ????
Posté par: fritids23 le le 21-03-2005 a 16:57:50
;D salut les pros,
j'ai une petite question à poser, sur certains sites je remarque que pour faciliter la navigation, ils utilisent une technique genre:
vous êtes içi : accueil - pages - presentation - liensx .... etc
du coups ca situe à l'usager son niveau de navigation et ca lui permet de cliquer sur un mot pour retrouver la page correspondante. comment on peut faire ge genre de liens???? j'ai tellemnt réflichi que j'yarrive pas. je suis une burne en php; shame on me :-[ aidez moi svp |
Titre: Re:lines dynamiques... ????
Posté par: bigornot le le 21-03-2005 a 18:18:38
| <a href="tapage d'accueil" title="Titre du lien">Accueil</a> - <a href="tapage n2" title="Titre du lien">Lien2</a> etc... |
Titre: Re:lines dynamiques... ????
Posté par: MFred le le 21-03-2005 a 21:29:32
Si tu utilises des adresses de ce type : http://www.site.com/?dossier=X&sousdossier=Y&article=Z ... Tu peux utiliser un script de ce genre :
Code:
<?php $adresse=$_SERVER['REQUEST_URI']; $adresse_p=str_replace('?','|?',$adresse); $adresse_p=str_replace('&','|&',$adresse_p); $adresse_array=explode('|',$adresse_p); print_r($adresse_array); $i=0; $adresse=''; foreach ($adresse_array as $cle=>$valeur) { if ($i!=0) echo ' > '; $adresse.=$valeur; echo '<a href="',$adresse,'">'; $nom=str_replace('=',' ',$valeur); $nom=str_replace('?','',$nom); $nom=str_replace('/','',$nom); $nom=str_replace('&','',$nom); if ($i==0) $nom='Accueil'; echo $nom,'</a>'; $i++; } ?> |
|
Ca devrait te retourner quelque chose comme : Accueil > dossier X > sousdossier Y > article Z ... (avec les liens adaptés) |
Titre: Re:lines dynamiques... ????
Posté par: fritids23 le le 22-03-2005 a 11:12:09
merci à toi bigornot, mais ca je connais déja, remarque ca peu t aider els novices. et merci àtoi master-bilbon, j'ai exactement ce que je cherchais, j'essayerais cela je vous tienderais au courant si jamis j'ai des problemes. ;D ;D |
Titre: Re:lines dynamiques... ????
Posté par: fritids23 le le 23-03-2005 a 11:20:54
salut,
bon voilà j'ai éssayé ton code, c'est ce que je cherche mais j'arrive pas à l'adapté. je merde quelque part. j'ai mis ton code la ou je voulais sur une page (j' utilise include ) mais ca me donne ceci :
pour page activités par ex
Array ( [0] => /aema/pages/index.php [1] => ?page=activités ) Accueil > page activités
pour page mot du président par ex:
Array ( [0] => /aema/pages/index.php [1] => ?page=mot%20du%20président ) Accueil > page mot%20du%20président
1)déja ce qui cloche c le : Array ( [0] => /aema/pages/index.php [1] => ?page=mot%20du%20président ) pourqoui j'ai cela.
2)quand je clique sur les liens généres ca marche, mais pourqoui page activités au lieu de activités tout court et c qoui c caractéres bizars qui apparaissent %%%%.
merci pour votre clarification
|
Titre: Re:lines dynamiques... ????
Posté par: bigornot le le 23-03-2005 a 13:32:48
Pourquoi page activité au lieu de activité ?
Il suffit de changer ça :
Code:
<?php $adresse=$_SERVER['REQUEST_URI']; $adresse_p=str_replace('?','|?',$adresse); $adresse_p=str_replace('&','|&',$adresse_p); $adresse_array=explode('|',$adresse_p); print_r($adresse_array); $i=0; $adresse=''; foreach ($adresse_array as $cle=>$valeur) { if ($i!=0) echo ' > '; $adresse.=$valeur; echo '<a href="',$adresse,'">'; $nom=str_replace('=',' ',$valeur); $nom=str_replace('?','',$nom); $nom=str_replace('/','',$nom); $nom=str_replace('&','',$nom); if ($i==0) $nom='Accueil'; echo $nom,'</a>'; $i++; } ?>
|
|
en ça :
Code:
<?php $adresse=$_SERVER['REQUEST_URI']; $adresse_p=str_replace('?','|?',$adresse); $adresse_p=str_replace('&','|&',$adresse_p); $adresse_array=explode('|',$adresse_p); print_r($adresse_array); $i=0; $adresse=''; foreach ($adresse_array as $cle=>$valeur) { if ($i!=0) echo ' > '; $adresse.=$valeur; echo '<a href="',$adresse,'">'; $nom=str_replace('=',' ',$valeur); $nom=str_replace('?','',$nom); $nom=str_replace('/','',$nom); $nom=str_replace('&','',$nom); $nom=str_replace('page ','',$nom);/* <---- L'ajout est ici */ if ($i==0) $nom='Accueil'; echo $nom,'</a>'; $i++; }
|
|
et pour les %20, c'est parceque les ' ' ne rentrent pas dans l'url... donc, il te faudra un code comme ça :
Code:
<?php $adresse=$_SERVER['REQUEST_URI']; $adresse_p=str_replace('?','|?',$adresse); $adresse_p=str_replace('&','|&',$adresse_p); $adresse_array=explode('|',$adresse_p); print_r($adresse_array); $i=0; $adresse=''; foreach ($adresse_array as $cle=>$valeur) { if ($i!=0) echo ' > '; $adresse.=$valeur; echo '<a href="',$adresse,'">'; $nom=str_replace('=',' ',$valeur); $nom=str_replace('?','',$nom); $nom=str_replace('/','',$nom); $nom=str_replace('&','',$nom); $nom=str_replace('page ','',$nom);/* <---- L'ajout est ici */ $nom=str_replace('%20','',$nom);/* <---- et ici aussi */ if ($i==0) $nom='Accueil'; echo $nom,'</a>'; $i++; }
|
|
|
Titre: Re:lines dynamiques... ????
Posté par: fritids23 le le 23-03-2005 a 13:50:55
merci pour cette réponse je teste ca plus tard, mais pourqoui j'ai ce message : Array ( => /aema/pages/index.php [1] => ?page=...) devant accueil?? ???? |
Titre: Re:lines dynamiques... ????
Posté par: MFred le le 23-03-2005 a 15:00:13
Dégage le "print_r($adresse_array);" Le print_r, c'était plutot pour que tu comprennes à peu près comment ca marche : stockage des différentes parties de l'url dans un tableau, puis boucle foreach parcourant ce tableau. Bien sur tu peux utiliser ce code sans rien changer, mais mieux vaudrait bien le comprendre si tu veux un jour le modifier :) |
Titre: Re:lines dynamiques... ????
Posté par: fritids23 le le 24-03-2005 a 12:37:29
merci à vous deux ;) :) ;D > ;D ca marche impec. c'est ce que je cherchais depuis longtems. le seul prob que j'ai eu c que sur ma page : mot du président j'avais les caractéres %20, j'ai réussi à les enlever mais le mot est collé. ya pas d'espace. alors j'ai fini par trouver l'astuce, il falait metre un peu d'espace entre ' ' juste aprés'%20' dans la ligne suivante :
$nom=str_replace('%20',' ',$nom);/* <---- et ici aussi */
merci beaucoup à vous.
une derniere question : comment pourais je changer le style du caractére >. je voudrais lui attribué un style qui correspond à ma charte graphique et mes css. y'a t-il une solution???
thanks
|
Titre: Re:lines dynamiques... ????
Posté par: MFred le le 24-03-2005 a 18:55:00
Tu peux ajouter une classe dans l'élement <a>, à cette ligne :
Code:
| echo '<a href="',$adresse,'" class=" ">'; |
|
|
Forum-webmaster | Actionné par YaBB SE
© 2001-2003, YaBB SE Dev Team. Tous droits réservés.
|