Page 1 sur 1

Problème tutoriel liste déroulante

Posté : 14 janv. 2011, 12:38
par guigui64
Bonjour, j'ai un problème avec le tutoriel de Cyrano , en effet j'ai qu'une liste au lieu de deux .voici le code de la page index
<?php
echo("<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n");
/* Variables de connexion : ajustez ces paramètres selon votre propre environnement */
$serveur = "localhost";
$admin   = "root";
$mdp     = "";
$base    = "test";
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" xml:lang="fr" />
<title>Liste déroulantes dynamiques liées</title>

<script type="text/javascript" src="./arrayPHP2JS.js" charset="iso_8859-1"></script>
<script type="text/javascript" src="./changeDom.js" charset="iso_8859-1"></script>
<?php
/* Requête SQL de récupération des données */
$sql = "SELECT domaine.Id_Dom AS idd, Nom_Dom AS dom, verbe.Id_Verbe AS idv, NomVerbe".
" FROM domaine,verbe,competence  ".
" WHERE domaine.Id_Dom = competence.Id_Dom ".
" ORDER BY competence.Id_Dom;";


/* Connexion et exécution de la requête */
$connexion = mysql_pconnect($serveur, $admin, $mdp);
if($connexion != false)
{
    $choixbase = mysql_select_db($base, $connexion);
    $recherche = mysql_query($sql, $connexion)or die(mysql_error()) ;
    /* Pour ne pas écraser mes tableaux, je crée un témoin */
    $temoin_r = 0;
    /* Création du tableau PHP des valeurs récupérées */
    $competences = array();
    /* Index du département par tableau régional */
    $id = 0;
    while($ligne = mysql_fetch_assoc($recherche))
    {
        $v = $ligne['idv'];
        $d = $ligne['idd'];
        /* Je vérifie si je suis toujours dans la même compétence, sinon je crée les tableaux nécessaires */
        if($temoin_r != $v)
        {
            $competences[$v] = array();
            /* J'ajoute la competence */
            $competences[$v][0] = $ligne['NomVerbe'];
            $competences[$v][1] = array();
            $competences[$v][2] = array();
            $temoin_r = $v;
            $id = 0;
        }
        /* J'ajoute les domaines */
        $competences[$v][1][$id] = $d;
        $competences[$v][2][$id] = $ligne['dom'];
        $id++;
    }
    /* On sérialise le tableau obtenu pour traitement par JavaScript */
    $chaine = htmlspecialchars(serialize($competences), ENT_QUOTES);
?>
<script type="text/javascript">
/* <![CDATA[ */
<!--
/*
* Ici, on transmets la chaîne sérialisée à JavaScript 
* pour la transformer en tableau indexé JavaScript 
*/
var tableau = new PhpArray2Js('<?php echo $chaine; ?>');
var tab = tableau.retour();
// -->
/* ]]> */
</script>
</head>
<body style="font-family: verdana, helvetica, sans-serif; font-size: 85%">
<h3>Version Utilisant JavaScript</h3>
<p>Vous constaterez que le délai de latence entre la sélection et la mise à jour est quasiment inexistant.</p>
<?php
if(isset($_POST['ok']) && isset($_POST['domaine']) && $_POST['domaine'] != "")
{
    $competences_selectionnee = $_POST['competences'];
    $dom_selectionne = $_POST['domaine'];
?>
<p>Vous avez sélectionné le département <?php echo($dept_selectionne); ?> dans la région <?php echo($region_selectionnee); ?></p>
<?php
}
?>
<form action="<?php echo($_SERVER['PHP_SELF']); ?>" method="post" id="chgdom">
  <fieldset style="border: 3px double #333399">
  <legend>Sélectionnez une compétence</legend>
    <select name="competences" id="competences" onchange="changeDept(tab,this.value);">
      <option value="vide">- - - Choisissez une compétence - - -</option>
    <?php
    /* Construction de la première liste : on se sert du tableau PHP */
    $nbr = count($competences);
    foreach($competences as $nr => $nom)
    {
        ?>
    <option value="<?php echo($nr); ?>"><?php echo($nom[0]); ?></option>
<?php
    }
    ?>
    </select>
    <!-- ICI, le secret : on met un bloc avec un id ou va s'insérer le code de
         la seconde liste déroulande -->
  <span id="blocDomaine"></span><br />
  <input type="submit" name="ok" id="ok" value="Envoyer" />
  </fieldset>
</form>
<?php
    
}
else
{
    /*  Si vous arrivez ici, vous avez un gros problème avec la connexion au serveur de base de données */
?>
</head>
<body>
<p>La connexion au serveur de base de données a échoué. Aucun élément ne peut être affiché.</p>
<?php
}
?>
<p><a href="./index.php" title="Aller vers la version 100% PHP">Aller vers la version 100% PHP</a></p>
</body>
</html>

Re: Problème tutoriel liste déroulante

Posté : 14 janv. 2011, 12:57
par guigui64
Erreur : je me suis tout mélangé post a fermer

Re: Problème tutoriel liste déroulante

Posté : 14 janv. 2011, 13:07
par moogli
clique sur résolu dans ce cas ;) merci

@+