Hallo,
Gleich vorweg, ich hab nicht die Ahnung von JavaScript aber finde es
ist eine praktische Lösung für mein Problem. Theoretisch könnte ich auch alles mit Refreshen lösen aber das ist schrott....
Vor einiger Zeit hab ich ein Dynamisches Dropdown zusammengebastelt was mir erstmal alle Hauptkategorien aus meiner Datenbank holt. Und passend zur Auswahl der Hauptkategorie werden die Unterkategorien ausgegeben. Das war schon schlimm genung
So sieht das ganze aus....
HTML Datei (Template)
PHP Datei
JavaScript
Ok das funktioniert auch alles super.... Nur wie kann ich das ding
jetzt so erweitern das es nun auf 3 Ebenen läuft... Hier nochmal
meine Datenbank, die ist aber schon auf 3 ebenen erweitert.
Denke was hier Hauptkat, Unterkat und Unterunterkat ist
klar... Wenn nicht einfach fragen :-)
Danke schonmal..!
Gleich vorweg, ich hab nicht die Ahnung von JavaScript aber finde es
ist eine praktische Lösung für mein Problem. Theoretisch könnte ich auch alles mit Refreshen lösen aber das ist schrott....
Vor einiger Zeit hab ich ein Dynamisches Dropdown zusammengebastelt was mir erstmal alle Hauptkategorien aus meiner Datenbank holt. Und passend zur Auswahl der Hauptkategorie werden die Unterkategorien ausgegeben. Das war schon schlimm genung
So sieht das ganze aus....
HTML Datei (Template)
PHP-Code:
<select size='1' name='kategorie' onchange='update_auswahl()'
style="border-style:solid; border-width:1px; color:#FFFFFF;
background-color:#800000">
{$hauptkategorie}
</select>
<select size='1' name='unterkategorie' style="border-style:solid;
border-width:1px; color:#FFFFFF; background-color:#800000">
{$unterkategorie}
</select>
PHP Datei
PHP-Code:
$b=mysql_query("Select p1.id,p1.kategorie from pv_kategorien p1,
pv_kategorien p2 where p2.u_id = p1.id and p1.u_id IS NULL group
by id ORDER by p1.kategorie") or die(mysql_error());
while($temp=mysql_fetch_array($b)){
$hauptkategorie.= "<option
value='$temp[kategorie]'>$temp[kategorie]</option>";
}
$c=mysql_query("Select p2.id,p2.u_id from pv_kategorien p1,
pv_kategorien p2 where p1.id = p2.u_id and p1.u_id IS NULL
ORDER by p1.kategorie LIMIT 1") or die(mysql_error());
list($id_now,$id_show)=mysql_fetch_row($c);
$d=mysql_query("Select kategorie from pv_kategorien where
u_id = $id_show and u_u_id IS NULL order by kategorie") or
die(mysql_error());
while($temp2=mysql_fetch_array($d)){
$unterkategorie.="<option value='$temp2[kategorie]'>$temp2[kategorie]</option>";
}
JavaScript
PHP-Code:
<!-- Start
function update_auswahl()
{
var kategorieAuswahl = document.forms.verzeichnis.kategorie;
var unterkategorieAuswahl = document.forms.verzeichnis.unterkategorie;
unterkategorieAuswahl.options.length = 0; // DropDown Menü
entleeren
<?php
//Hauptkats ausgeben
$a=mysql_query("Select p1.id,p1.kategorie, p2.u_id from
pv_kategorien p1, pv_kategorien p2 where p2.u_id = p1.id and
p1.u_id IS NULL group by id ORDER by p1.kategorie") or
die(mysql_error());
while($temp=mysql_fetch_array($a)){
?>
if (kategorieAuswahl.options[kategorieAuswahl.selectedIndex].value == "<?php echo $temp[kategorie]; ?>")
{
<?php
$b=mysql_query("Select kategorie from pv_kategorien
where u_id = $temp[id] order by kategorie") or die(mysql_error());
$counter = 0;
while($temp2=mysql_fetch_array($b)){
?>
unterkategorieAuswahl.options[<?php echo $counter; ?>] = new
Option("<?php echo $temp2[kategorie]; ?>");
<?php
$counter++;
}
?>
}
<?php
}
?>
}
// Ende -->
Ok das funktioniert auch alles super.... Nur wie kann ich das ding
jetzt so erweitern das es nun auf 3 Ebenen läuft... Hier nochmal
meine Datenbank, die ist aber schon auf 3 ebenen erweitert.
Denke was hier Hauptkat, Unterkat und Unterunterkat ist
klar... Wenn nicht einfach fragen :-)
Danke schonmal..!
Kommentar