Partage
  • Partager sur Facebook
  • Partager sur Twitter

Variables globales en fonction

La modifier dans une, l'utiliser dans l'autre

Sujet résolu
    10 novembre 2010 à 19:06:00

    Bonjour à tous ! :)
    J'ai un site sur lequel il y a des galleries de photos. Mais plutot que de charger un flash par gallerie je change juste le fichier xml lui correspondant. J'ai donc deux pages:
    - une page "creations.html" où il y a une liste déroulante et le bouton de lancement de la gallerie
    - une page "gallerie.php" qui charge le xml demandé puis le flash.
    Aucun problème si le tout était géré par php mais du javascript intervient avant la redirection vers la gallerie donc je dois générer l'adresse de redirection en JS de la forme gallerie.php?xml=...
    La variable xml est définie par la valeur de la liste déroulante donc j'ai fait un switch en JS mais au final xml vaut undefined et je sais pas comment faire. :euh:
    Voici le code:
    var xml;
    function changement(liste)
    {
    	var IDchoix = liste.selectedIndex;
    	alert(IDchoix);
    	var choix = liste.options[IDchoix].value;
    	alert(choix);
    	switch(choix)
    	{
            case "enfant": 
                    xml = 1;
                    break;
            case "ceremonie":
                    xml = 2;
                    break;
            case "noel":
    	        xml = 3;
    		break;
    	case "divers":
    		xml = 4;
    		break;
            default:
                    xml= 4;
                    break;
    	}
    	alert(xml);
    	return xml;
    }
    var endroit = "'gallerie.php?xml=" + xml + "'";
    

    et le code html:
    <select name="gallerie" onchange="changement(this)">
    	<optgroup label="Choisissez votre gallerie:">
    	<label><em>Choisissez votre gallerie:</em></label>
        <option value="enfant">Gallerie Enfant</option>
        <option value="ceremonie">Gallerie C&eacute;r&eacute;monies</option>
        <option value="noel">Gallerie No&euml;l</option>
        <option value="divers">Gallerie petite d&eacute;co diverse</option>
    	</optgroup>
    </select>
    

    Je précise que les alert du code sont juste pour tester et que la variable "endroit" est utlisée dans une autre fonction après celle là
    Merci de votre aide :D
    • Partager sur Facebook
    • Partager sur Twitter
      11 novembre 2010 à 0:16:14

      Deux soucis 1, dès le début mis ainsi endroit vaudra undefined.
      Donc attribut bêtement au début une valeur à Xml :
      var endroit = 'gallerie.php?xml=4';

      2, "endroit" est définis dès le début, donc il ne changera pas, si tu veux le changer fais par exemple :
      return endroit = 'gallerie.php?xml='+xml;


      Ps: pourquoi faire un switch au lieu d'utiliser simplement l'IDchoix pour le xml ?
      Ps2: je te conseille de mettre xml en variable Local.
      Ps3: on écris en français galerie avec UN l :) .
      • Partager sur Facebook
      • Partager sur Twitter
        11 novembre 2010 à 10:03:20

        Ok merci ça m'a bien aidé ! ;)
        • Partager sur Facebook
        • Partager sur Twitter

        Variables globales en fonction

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown