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

PHP & Base de données Discussion :

Liste deroulantes dependante d'une autre liste deroulante


Sujet :

PHP & Base de données

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2012
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2012
    Messages : 128
    Points : 62
    Points
    62
    Par défaut Liste deroulantes dependante d'une autre liste deroulante
    Bonjour,

    Tout est dis dans le titre. Je souhaiterais avoir une liste deroulante qui est dependante d'une autre liste deroulante.

    Voici ce que j'ai fais. Je crois savoir qu'il faut utiliser ajax ou du js. Seul souci je ne m'y connais pas du tout.

    De plus j'ai une certaine structure de mon site et je voudrais la garder. Je ne sais pas trop comment l'adapter. Donc je recherche une solution alternative.
    JE vous mets mon code.

    rechercheCatArticle.php qui va permettre de rechercher un article en fonction dee liste deroulante.
    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
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    <?php
     
      // a placer en TOUT debut de chaque page
      session_start();
      if(! isset($_SESSION['nom'])) {
        header('Location: session_form.html');
        exit();
      }
    include "DB.inc.php";
    include "fctAux.inc.php";
      enTete();
      contenu();
      pied();
     
      function contenu(){
     
    	menu();
     
    	$requete = "select distinct(d_name) from dcs_v order by D_NAME";
    	$requete2 = "select distinct(c_name) from dcs_v where d_name  = '".mysql_real_escape_string ($nom)."' order by C_NAME";
    	$requete3 = "select distinct(s_name) from dcs_v order by S_NAME";
     
     
     
    	$db = new DB();
    	$t = $db->select($requete);
     
    	$selected = '';
    	echo '<select name="department">',"\n";
    	for ($i = 0; $i < count($t); $i++) {
    			$tuple =  $t[$i];
    			echo "\t",'<option value="', $tuple->D_NAME ,'"', $selected ,'>', $tuple->D_NAME ,'</option>',"\n";
    			$selected='';
    	}
     
    	echo '</select>';
    	echo '<br>';
     
    	echo $tuple->D_NAME;
     
    	$db = new DB();
    	$t = $db->select($requete2);
     
    	$selected2 = '';
    	echo '<select name="class">',"\n";
     
     
    	for ($i = 0; $i < count($t); $i++) {
    			$tuple =  $t[$i];
    			echo "\t",'<option value="', $tuple->C_NAME ,'"', $selected2 ,'>', $tuple->C_NAME ,'</option>',"\n";
    			$selected2='';
    	}
    }
    ?>
    DB.inc.php (qui fais office de connexion a la base et une fonction permettant l'execution de mes requetes).
    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
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    <?php
    // classe d'interface avec la base de donnees postgresql
     
        class DB{
     
    	/************************************************************************/
    	//	Connexion à la base
    	/************************************************************************/
            private function connect(){
                    $connexion=OCILogOn("reportuser", "report", "SEPHO_DK")
                            or die("Impossible de se connecter");
                    return $connexion;
            }
     
    	/***************************************************************/
            // Fermeture de la connexion
            /***************************************************************/
            private function close($connexion){
                    OCIlogoff($connexion);
            }
     
    	/***************************************************************/
            // SELECT generique sur une table quelconque
            /***************************************************************/
            function select($requeteSQL){
    		$tab=array();
                    $connexion=DB::connect();
                    $row = 0;
                    $reponse = OCIParse($connexion, $requeteSQL);
    				OCIExecute($reponse);
    		while ($tuple = oci_fetch_object($reponse)){
    		      $tab[$row]=$tuple;
    		      $row++;
                    }       
                    DB::close($connexion);	
                    return $tab;
            }
     
    	/***************************************************************/
            // MAJ generique sur une table quelconque
            /***************************************************************/
            function maj($requeteSQL){
                    $connexion=DB::connect();
                    OCIExecute($connexion, $requeteSQL) or die("requete impossible !\n");
                    DB::close($connexion); 
            }
        }
    ?>
    fctAux.inc.php (qui permet de faire toute la structure de mon site)
    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
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    <?php
     
    	function enTete() {
    		echo "<!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\"\"http://www.w3.org/TR/html4/loose.dtd\">\n";
    		echo "<html>\n";
    		echo "<head>\n";
    		echo "<link href=\"miseEnPage.css\" type=\"text/css\" rel=\"stylesheet\">";
    		echo "<title>RP Consulting</title>\n";
    		echo "</head>\n";
    		/*echo "<body style=\"background:url('lanvin3.jpg') no-repeat; -webkit-background-size: cover; -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover; \">\n";*/
    	echo "<body bgcolor=\"#DBE6E5\">\n";
    	}
     
    	function pied(){
    	echo'
    		</body>
    		</html>
    	';
    	}
     
    	function menu(){
     
    	echo '
    	<div class="haut">
    		<div class="hautGauche">
    		<img src="lanvin4.jpg">
    		</div>
    		<div class="hautCentre">
    		RP Consulting  </div>
    		</div>
    		</div>
    		
    		
    		<div class="milieu">
    		
    		<div class="menu">
    		
    		Search
    		<ul>
    			<li><a href="rechercheClient.php">Customers</a>
    			<li><a href="rechercheArticle.php">Classic search Items</a>
    			<li><a href="rechercheCatArticle.php">Categorie search Items</a>
    		</ul>
    		
    		Others
    		<ul>
    			<li><a href="about.php">About</a>
    			<li><a href="deconnexion.php">Disconnect</a>
    		</ul>
    		
    		</div>
    	';	
    	}	
     
    ?>
    Je ne vois pas trop comment adapter cela.

    J'espere que vous pourrez m'aider.

    Cordialement,

  2. #2
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Quelque chose comme ça : Listes liées : PHP, mySql, jQuery (ajax) ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2010] Liste deroulante dependante d'une autre dans un sous formulaire
    Par charly41 dans le forum VBA Access
    Réponses: 8
    Dernier message: 07/01/2015, 10h37
  2. Réponses: 9
    Dernier message: 25/10/2007, 16h20
  3. remplissage d'une liste déroulante à partir d'une autre liste
    Par monphp dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 24/05/2007, 12h28
  4. Remplir une liste au changement d'une autre liste
    Par JauB dans le forum Servlets/JSP
    Réponses: 10
    Dernier message: 12/01/2007, 10h35
  5. Réponses: 3
    Dernier message: 30/06/2006, 22h56

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