par
Invité » 29 mai 2007, 23:11
voila, mon problème, c'est que je suis en train de chercher une solution pour créer deux listes liées.
J'ai trouvé dans un site, un code complet, mais quand je l'ai testé, je reçois la deuxième liste sans libéllé!! je vois le nombre de ligne correcte mais contient des traits (-----------) !!!
je vous présente le code, et j'espere que vous trouvez où se situ le problème!!!
Code : Tout sélectionner
<?php
$hote="localhost";
$user="root";
$pass="";
$Base="demo_lst";
@mysql_connect($hote, $user, $pass);
?>
<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[i] = null;
}
code_rub = document.frmDemo1.zlRubrique.selectedIndex;
<?php
$zlRubrique=$_POST['zlRubrique'];
// Génération des Items par Rubriques
$sql = "SELECT code FROM demo_rubrique ORDER BY code";
$resultat = mysql_db_query($Base, $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($Base, $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($Base, $sql);
echo "<FORM METHOD=POST NAME='frmDemo1'>";
echo "<BR> <B>Rubriques</B> ";
echo " <SELECT NAME='zlRubrique' onChange='ModifierListe(-1)'>\n";
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($Base, $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($Base, $sql);
$enr = @mysql_fetch_array($resultat);
echo "Item = $zlItem [$enr[0]]<BR>\n";
}
?>
voila, mon problème, c'est que je suis en train de chercher une solution pour créer deux listes liées.
J'ai trouvé dans un site, un code complet, mais quand je l'ai testé, je reçois la deuxième liste sans libéllé!! je vois le nombre de ligne correcte mais contient des traits (-----------) !!!
je vous présente le code, et j'espere que vous trouvez où se situ le problème!!!
[code]
<?php
$hote="localhost";
$user="root";
$pass="";
$Base="demo_lst";
@mysql_connect($hote, $user, $pass);
?>
<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[i] = null;
}
code_rub = document.frmDemo1.zlRubrique.selectedIndex;
<?php
$zlRubrique=$_POST['zlRubrique'];
// Génération des Items par Rubriques
$sql = "SELECT code FROM demo_rubrique ORDER BY code";
$resultat = mysql_db_query($Base, $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($Base, $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($Base, $sql);
echo "<FORM METHOD=POST NAME='frmDemo1'>";
echo "<BR> <B>Rubriques</B> ";
echo " <SELECT NAME='zlRubrique' onChange='ModifierListe(-1)'>\n";
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($Base, $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($Base, $sql);
$enr = @mysql_fetch_array($resultat);
echo "Item = $zlItem [$enr[0]]<BR>\n";
}
?>
[/code]