8797 sujets

Développement web côté serveur, CMS

Bonjour,

Voilà, pour faire simple, voici l'adresse de mon site (en tests).

Maintenant, ce à quoi je veux parvenir : pouvoir switcher 2 objets dans ma page d'index (par des includes Smiley confus ) .. je suis peut-être pas clair Smiley ohwell

Pour illustrer ma demande, rdv à l'adresse indiquée ..
Je voudrais avoir un petit bouton permetant de switcher entre la "tribune libre (fonction javascript appelée dans le <body> par un 'onload...') et un "plugoo" (widjet à la mode s'appelant entre balises <object></object>).
Pourquoi ??
Tout simplement dans un soucis d'accessibilité, la "tribune libre" et le "plugoo" étant 2 éléments relativement haut, j'ai testé et cela me fait méchant scroll qui me plaît pas du tout Smiley confus

Donc je me suis rencardé sur la fonction php SWITCH qui me parraît sympathique Smiley smile sauf que j'ai aucune idée du fonctionnement que cela pourrait avoir !?
Mes questions :
- Comment passer une variable à la page index.php (variable qui sera utilisée pour la fonction switch) par défaut pour qu'elle soit interprêtée par le switch à l'interieur du body ?? du genre on tape http://www.muscle-museum.net et automatiquement ça fait un http://www.muscle-museum.net?objet=trib_libre ou plugoo !? Smiley rolleyes

Si vous avez une réponse à cela, je pense pouvoir m'en sortir par la suite Smiley langue
Modifié par tcyrill2 (01 Nov 2007 - 14:47)
bonjour,

je pense avoir compris ...(pas sur )

Tu souhaites transformer ton url de base ? si tu fais un switch tu as le cas par default donc tu pourras mettre ton objet='trib_libr';

Mais je ne vois pas pourquoi faire un switch alors que tu as seulement 2 choix possible. Si tu as besoin que l'url soit sous cette form pour reprendre la variable objet pour ton javascript. Autant inclure directement le php au javascript ( c'est pas très propre mais ça fonctionne. )

Si je me suis planter dit le moi.
Okiii, j'ai trouvé ...


<?php
        // je recupère la valeur de la variable passée à ma page index.php
	$obj = $HTTP_GET_VARS ['obj'];
        // et je fais un include de l'objet qui va bien en fontion de la valeur
	switch ($obj)
        {
	     case trib:
	        include ('free_trib.php');
	        break;
	     case plugoo:
	        include ('plugoo.php');
	        break;
	     default:
	        include ('free_trib.php');
	}
?>


J'ai bien evidement un autre bout de code php avec une condition "if" pour afficher le lien qu'il faut en fonction de la valeur de la variable (tribune_libre+lien plugoo <-> plugoo+lien tribune_libre) ... mes liens étant de la forme <a href="mon_site.com/index.php?obj=valeur"></a>

>> Bon ça me fait un rechargement de page en passant une nouvelle valeur à ma variable dont je me serais bien passé. Il y a sûrement possibilité de faire tout ça sans recharger (je pense à Ajaxx) mais je ne connais ni de près, ni de loin, donc pour le moment ... (ça n'empêche a personne de me donner une solution si il en a une Smiley smile )

Enfin bref, ça marche niquel, c'était pas bien compliqué ... Smiley smile



Je m'attaques maintenant a incorporer du Javascript dans tout ça pour rajouter un petit effet de transition lors du switch vers un objet Smiley cligne

Si quelqu'un a une idée ... Smiley langue
Modifié par tcyrill2 (25 Oct 2007 - 06:30)
Bonjour,

je te conseil de remplacer l'utilisation de $HTTP_GET_VARS par $_GET. Tu aura le même fonctionnement mais en plus sécurisé et en plus évolutif ($HTTP_GET_VARS est déprécié)

Ce qui donnerais (j'ai enlevé un case qui ne servait à rien):

<?php
        // je recupère la valeur de la variable passée à ma page index.php
	$obj = $_GET['obj'];
        // et je fais un include de l'objet qui va bien en fontion de la valeur
	switch ($obj)
        {
	     case plugoo:
	        include ('plugoo.php');
	        break;
	     default:
	        include ('free_trib.php');
	}
?>


bonne continuation Smiley cligne
Yep, merci François44 ...

Cela-dit, j'ai testé mon ancienne version et avec tes modifs, et j'ai un petit soucis ...

Je m'explique, ça marche niquel en local (solutions apache/php sur clé usb type mov'amp).

A contrario, quand je teste sur mon serveur, le "default" du switch fonctionne correctement et m'affiche bien la "tribune libre" mais quand je clique sur le lien pour recharger ma page en changeant la valeur de la variable (donc afficher l'autre objet), FireFox me demande d'ouvrir ou de telecharger la page index.php !?!? tant qu'à IE, il me répond carément que la page http://www.muscle-museum.net/index.php?obj=plugoo !?!? Smiley decu

une idée ??