Bonjour, j'ai créé 1 base de données sur MYSQL comportant les 2 tables suivantes :
code rubrique
1 Langage
2 OS
3 SGBD
code item code_rub
1 PHP 1
2 ASP 1
3 JavaScript 1
4 C++ 1
5 Linux 2
6 Windows 2
7 Mac OS X 2
8 FreeBSD 2
9 Unix 2
10 MySQL 3
11 PostgreSQL 3
12 Oracle 3
et g trouvé sur le net comment faire pour que quand je change de rubrique ma liste d'items change,la il n'y a pas de probleme. en fait la où ca coince c que je veux sauvegarder la rubrique sélectionnée et l'item sélectionné mais je n'y arrive pas si qqn peut m'aider voici le code :
<SCRIPT LANGUAGE="JavaScript">
function ModifierListe(code_item) {
lg = document.frmDemo1.zlItem.length;
// On vide la liste
for (i = lg - 1; i >= 0; i--) {
document.frmDemo1.zlItem.options = null;
}
code_rub = document.frmDemo1.zlRubrique.selectedIndex;
<?php
// Génération des Items par Rubriques
$sql = "SELECT code FROM demo_rubrique ORDER BY code";
$resultat = mysql_db_query($dbName, $sql);
$max_lignes = 0;
$option_max = '';
while ($enr = mysql_fetch_array($resultat)) {
$sql = "SELECT code, item ";
$sql .= "FROM demo_item ";
$sql .= "WHERE code_rub='".$enr[0]."'";
$sql .= "ORDER BY item";
$resultat2 = mysql_db_query($dbName, $sql);
echo " if (document.frmDemo1.zlRubrique.options[code_rub].value == ".$enr[0].") {\n";
echo " document.frmDemo1.zlItem.length = ".(mysql_num_rows($resultat2)).";\n";
$cpt = 0;
while ($enr2 = mysql_fetch_array($resultat2)) {
echo " document.frmDemo1.zlItem.options[".$cpt."].value = ".$enr2[0].";\n";
echo " document.frmDemo1.zlItem.options[".$cpt."].text = \"".$enr2[1]."\";\n";
echo " if (code_item == ".$enr2[0].") document.frmDemo1.zlItem.options[".$cpt."].selected = true;\n";
$cpt++;
if ($cpt > $max_lignes) $max_lignes = $cpt;
if (strlen($enr2[1]) > strlen($option_max)) $option_max = $enr2[1];
}
echo " }\n";
}
?>
}
</SCRIPT>
<?php
// ----------------------------------------------------------------------------
// Liste Rubriques
// ----------------------------------------------------------------------------
$sql = "SELECT code, rubrique FROM demo_rubrique ORDER BY rubrique";
$resultat = mysql_db_query($dbName, $sql);
echo "<FORM METHOD=POST NAME='frmDemo1'>";
echo "<BR> <B>Rubriques</B> ";
echo " <SELECT NAME='zlRubrique' onChange='ModifierListe(-1)'>\n";
if (!isset($zlRubrique)) $zlRubrique = - 1;
while ($enr = mysql_fetch_array($resultat)) {
echo "<OPTION VALUE='".$enr[0]."'";
if ($zlRubrique == $enr[0]) echo " SELECTED";
echo ">".htmlspecialchars($enr[1])."</OPTION>\n";
}
echo "</SELECT> \n";
// ----------------------------------------------------------------------------
// Liste Items
// ----------------------------------------------------------------------------
echo " <B>Items</B> ";
echo " <SELECT NAME='zlItem'>\n";
for ($cpt = 0; $cpt < $max_lignes; $cpt++)
echo "<OPTION>".ereg_replace(".", "--", $option_max)."</OPTION>\n";
echo "</SELECT> \n";
if (!isset($zlItem)) $zlItem = -1;
echo "<SCRIPT LANGUAGE='JavaScript'>\n;ModifierListe(".$zlItem.");\n</SCRIPT>\n";
// ----------------------------------------------------------------------------
echo "<INPUT TYPE='submit' VALUE='Valider'>\n";
echo "</FORM>";
// ----------------------------------------------------------------------------
// Résultats des sélections
// ----------------------------------------------------------------------------
echo "Sélection :<BR>\n";
if (isset($zlRubrique) && $zlRubrique != "") {
$sql = "SELECT rubrique FROM demo_rubrique WHERE code='".$zlRubrique."'";
$resultat = @mysql_db_query($dbName, $sql);
$enr = @mysql_fetch_array($resultat);
echo "Rubrique = $zlRubrique [$enr[0]]<BR>\n";
}
if (isset($zlItem) && $zlItem != "" && $zlItem != -1) {
$sql = "SELECT item FROM demo_item WHERE code='".$zlItem."'";
$resultat = @mysql_db_query($dbName, $sql);
$enr = @mysql_fetch_array($resultat);
echo "Item = $zlItem [$enr[0]]<BR>\n";
}
?>