IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Liste déroulante et variables


Sujet :

JavaScript

  1. #1
    Membre confirmé Avatar de Mat67
    Profil pro
    Étudiant
    Inscrit en
    Juin 2007
    Messages
    145
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2007
    Messages : 145
    Par défaut Liste déroulante et variables
    Bonjour à tous, sur ma page listeappel.php, j'ai différentes informations, et une liste déroulante, qui me permet d'afficher des informations plus précises.

    Explication : Lorsque je séléctionne un élément dans la liste déroulante, grâce a l'attribu onchange, il faudrait que l'information sélectionné soit envoyer par méthode GET.

    Voilà un exemple :

    ma page par défault est :

    listeappel.php?type=Date&order=desc&page=1&interv=0

    lorsque je choisi des modes de tri différents, les attribus Type et et order changent, et page contient le numéro de la page à afficher.

    Lorsque je choisi un élément dans la liste déroulante, il faudrai que l'attribu onChange fasse appel à une fonction javascript qui va récupérer cet élément, ainsi que toutes les variables à mettre dans l'url ($type, $order, $page)
    et que cette dernière me recharge la page avec les bonnes informations.

    par exemple :

    type=Etat
    order=asc
    page=2

    et je séléctionne dans la liste déroulante l'intervenant Fred, la fonction javascript affiche la pae suivante :
    listeappel.php?type=Etat&order=asc&page=2&interv=Fred

    Mais je n'arrive pas à réaliser cette fonction !

    N'hésitez pas à poser des questions si je ne suis pas assez clair !

    Merci d'avance

  2. #2
    Membre Expert Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 023
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 023
    Par défaut
    Salut,
    ce serait plus naturel de faire ca en PHP, perso voici la fonction que j'utilise :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
    	/**
    	* Génère une chaîne en encodage URL construite à partir du tableau global <b>$_GET</b>
    	* et en fonction de la liste de noms de paramètres spécifiée.
    	* Si <i>$paramNames</i> est omis, la chaîne générée contiendra toutes les entrées du tableau <b>$_GET</b>.
    	* @param string $paramNames la liste des paramètres à récupérer dans le tableau <b>$_GET</b>
    	* @return string la chaîne des paramètres de l'url spécifiée dans la liste.
    	* 
    	*/
    	function getUrlParamsAsString()	{
    		$str = '';
    		if(func_num_args() > 0)	{
    			foreach(func_get_args() as $paramName)	{
    				if(isset($_GET[$paramName]) && $_GET[$paramName] != '')	{
    					if($str !== '')	{
    						$str .= '&amp;';
    					}
    					$str .= $paramName.'='.htmlentities($_GET[$paramName]);
    				}
    			}
    		}
    		else	{
    			foreach($_GET as $paramName => $paramValue)	{
    				if($paramName != '')	{
    					if($str !== '')	{
    						$str .= '&amp;';
    					}
    					$str .= $paramName.'='.htmlentities($paramValue);
    				}
    			}
    		}
    		return $str;
    	}
    tu mets ton formulaire en get et t'auras un truc du style :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <form action="page.php?<?php echo getUrlParamsAsString('type', 'order', 'page');?>">
    <select name="inter" onChange="this.form.submit()">
    <option></option>
    </select>
    </form>

  3. #3
    Membre confirmé Avatar de Mat67
    Profil pro
    Étudiant
    Inscrit en
    Juin 2007
    Messages
    145
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2007
    Messages : 145
    Par défaut
    Merci de ta réponse, j'ai essayé, mais lorsque je séléctionne un élément dans la liste, la page se recharge, mais tous les paramètres dans l'url sont remplacés par un seul à savoir interv=0

    J'ai du également modifié un petit peu ton code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    action="page.php? <?php echo getUrlParamsAsString("type", "order", "page"); ?>"

  4. #4
    Membre Expert Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 023
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 023
    Par défaut
    T'as bien mis method="get" pour ton form ?
    Fais-voir un peu plus de code.

    Petite modif sur la fonction :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    function getUrlParamsAsString()	{
    	$params = array();
    	if(func_num_args() > 0)	{
    		foreach(func_get_args() as $paramName)	{
    			if(isset($_GET[$paramName]) && $_GET[$paramName] != '')	{
    				$params[] = $paramName.'='.$_GET[$paramName];
    			}
    		}
    	}
    	if(!empty($params))	{
    		return implode('&amp;', $params);
    	}
    	else	{
    		return '';
    	}
    }

Discussions similaires

  1. Liste déroulante et variables
    Par ronan34 dans le forum Langage
    Réponses: 22
    Dernier message: 04/08/2008, 09h06
  2. Liste déroulante vers variable
    Par gastoncs dans le forum Langage
    Réponses: 8
    Dernier message: 30/11/2007, 17h56
  3. [MySQL] Liste déroulante et variable POST
    Par Aizen64 dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 11/10/2007, 10h51
  4. Liste déroulante à largeur variable
    Par Landolsi dans le forum Mise en page CSS
    Réponses: 13
    Dernier message: 12/07/2007, 16h39
  5. Listes déroulantes pour variables dans un état
    Par Oluha dans le forum Access
    Réponses: 6
    Dernier message: 06/02/2006, 16h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo