| ||||||||
Astucien ![]() | Hello! Je me pose une question existentielle... Sur mon site, je vais ajouter un ensemble de liens qui devront renvoyer chacun vers une zone du site: Actuellement, j'ai une page d'accueil avec un ensemble d'informations clicables Si on clique sur le lien1, je voudrais que ça charge le site avec un menu spécifique, et une page d'accueil spécifique pareil pour le lien 2 etc... Je n'ai pas besoin que les gens se loggent ou autre... Mais je me demandais si passer par les sessions serait la solution? J'aimginais le truc comme ça: une bdd avec: -nom de session -url du menu -url de la page d'accueil -url des différentes pages spécifiques. Le truc, c'est que quand un visiteur veut avoir accès aux infos de la session 1, il ait toujours tout le site et les infos correspondantes à la session en plus et s'il clique sur le lien2, les menu et infos de la zone 1 sont remplacés par celles de la zone 2
Que me conseillez vous? Merci | |||||||
Publicité | ||||||||
| ||||||||
![]() | Bonjour ogd Ma foi ça ressemble fort à un espace membre. Tu trouveras ton bonheur chez Malcolm | |||||||
Petit astucien | On pourrait effectivement s'inspirer d'une zone membre, mais cela ne semble pas exactement le probléme d'ogd. Déjà ogd indique que les gens n'ont pas besoin de se logger. D'autre part, il ne s'agit pas à proprement parler de zones protégées, mais en l'occurence de zone conservées. Pour ce qui est de l'emploi des sessions... Si on reste sur la même page, une page index par exemple dans laquelle sont appellées des pages par la fonction include, le systéme de session ne s'impose pas; il suffit de conserver, à chaque appel du ficher index, la variable qui indique la zone par la méthode GET notamment. Mais si le visiteur est censé naviguer sur plusieurs pages du site, le systéme de session est commode, il évite d'avoir à faire suivre la variable GET de page en page. Cela est effectivement intéressant. Ainsi s'il revient sur l'index aprés avoir baguenaudé; il retrouvera son menu de zone. Un clic sur un autre lien du menu des zones, et la session"zone" de la zone cliquée prendra le relais... Comme l'idée d'ogd me paraît intéressante et susceptible d'être utile à d'autres applications, dont certaines que je développe; comme aussi il caille dehors; je me suis permis ce petit script de mise en application de l'idée d'ogd. J'ai essayé de commenter le mieux possible...et bien sur la présentation est sommaire. <?php //TABLEAUX DES DONNEES -> à stocker dans tables bdd ou fichiers plats...ou comme ci-dessous direct php // INITIALISATION DES VARIABLES if(empty($_GET["numzone"])){ $_GET["numzone"]="0";} $numzone=$_GET["numzone"]; // INITIALISATION DE LA SESSION et VA-ET-VIENT if(empty($_SESSION["zone"])){$_SESSION["zone"]="";} if($page==""){ $page="truite.html" ;} <!-- PAGE HTML --> <html> <?php // MENUS SUR LES PAGES $npages=count($zone[0]); // nombre de pages de la zone commune if($_SESSION["zone"]!="0"){ </body> Bien à vous. *µ* | |||||||
![]() | RE Ca à l'air interessant en effet. | |||||||
![]() ![]() | ça dépend de ton nombre de visiteurs aussi, de ta config php et de la quantité d'infos que tu stockes. car il ne faut pas oublier qu'une session, c'est un tableau, donc de l'espace mémoire occupé. Je pense que tu as l'air de te rapprocher d'une session, ça peut même être la solution, pourquoi pas avec des cookies. | |||||||
Astucien ![]() | midnightblue > Ben dis donc, c'est Nöel
Merci, je vais décortiquer tout ça et je reviens ensuite donner mes résultats Malcolm > Quel est le risque en cas de fréquentation trop forte (e qui n'est pas le cas encore, mais je désespère pas Les cookies, j'y ai pensé aussi, mais s'ils sont désactivés chez l'utilisateur, c'est mort, donc j'ai besoin d'un système utilisable quelle que soit la config.
Merci Griggionne, j'avais déjà jeté un oeil sur le script de Malcolm, mais effectivement, j'aimerais éviter aux personnes d'avoir à s'inscrire. Bonne journée à tous ! | |||||||
![]() ![]() | tu peux tout à fait utliser mon système sans pour autant mettre en place une inscription ! si ce n'est que dans ce cas, c'est du volatile, donc à peine le navigateur fermé, tout est oublié.
concernant les pics de fréquentation : si tu ne mets que de petits nombres dans ta session, "ça va", si c'est pour stocker de longues chaines de caractères, faut penser que ça prend de la place ... | |||||||
Astucien ![]() | Ok, merci Malcolm, je regarde ça dans les jours qui viennent.
Merci en core et bonnes fêtes de fin d'années à toutes et tous | |||||||
![]() ![]() | ogd a écrit : même pas en dual/quad core ? | |||||||
Astucien ![]() | tu veux parler de la dualité entre le quad, cet horrible engin à 4 roues, qui me réveille tous les samedi matins et le corps? ce n'est plus une dualité, c'est un duel
| |||||||
![]() ![]() | et même un bon duel... | |||||||
Astucien ![]() | Bon, alors, j'ai étudié tes scripts... J'ai compris le principe mais: Je ne vois pas comment adapter à mes besoins: -1)pour déclarer mes variables des sessions je pense devoir faire qqchose dans ce style
is it right? Mais, comment à partir d'une image linkee, je peux définir la session? -2)pour afficher les éléments en fonction des sessions, je dois rappeler le if à chaque endroit où ces éléments doivent apparaitre? -3)Comment je peux faire pour que si aucune zone n'est sélectionnée, donc pas de session ouverte, ce soit mon menu habituel qui soit chargé, mais que si une session est appelée, ce soit le menu correspondant qui soit appelé? Merci pour tes explications et en retard, Joyeux Noël à toutes et tous ! | |||||||
![]() ![]() | Si j'ai bien compris : t'as ton site, avec un menu (par défaut) et dans ce menu, des liens. Supposons un menu qui comporte les liens Accueil (site normal), Noel (site avec design noel) et pâques (site avec design pâques). En arrivant sur ton site le visiteur doit avoir le template normal, s'il clque sur noel, il chargera la page correspondante avec la CSS de noel et le template de noel ... et pareil pour pâques. comme tu ne donnes pas d'exemple précis, je ne comprends pas plus.
Si c'est bien ça : une solution "simple" pourrait être de placer, en début de chaque page, ces 2 lignes :
ça définit une variable ($filename) qui est le nom du fichier courant, par exemple accueil.php, ou noel2009.php et ça appelle un fichier qui va gérer la session. dans ce fichier session.php, on y trouve :
( en clair, tu préremplis ton tableau de session avec les valeurs initiales. Ainsi, ça se fera automatiquement pour chaque visiteur, quelle que soit la page d'entrée du site. (car on n'arrive pas forcément par l'index déjà, ça répond au point 3)
Ensuite, j'ai créé une variable ($array_pages_noel) qui est un jeu de pages qui ont les mêmes infos. ça peut n'être qu'une page (auquel cas, au lieu du in_array, tu testes if ($this_filename == 'lapage.php')) ou un ensemble de pages auquel cas le tableau que j'ai fait me semble plus adapté.
Et je suppose que tu as quelque part dans ta page
et dans ce template, par exemple :
J'espère avoir pu t'aiguiller ...
| |||||||
Astucien ![]() | Hello Malcolm, Je regarderai tout ça avec intérêt d'ici quelques jours... Ben vi, en fait, j'attends incessament sous peu l'arrivée d'un deuxième petit brin de vie et donc forcément... En tous cas, je vous souhaite avec un peu d'avance une bonne et jeureuse année 2010! Et s'il vous plait, ne prenez pas de risques inutiles sur la route, le 31 est un jour de fête et doit le rester dans toutes les familles | |||||||
Publicité | ||||||||
| ||||||||
|
Les bons plans du moment PC Astuces | Tous les Bons Plans | ||||||||||||||||||
|