Hallo Allerseits!
Ich hab mir mit Javascript und PHP eine relationales Formmenü gebastelt. Zwei Dropdown Listen, von denen die zweite abhängig von der ersten verschiedene Menüpunkte darstellt (und das halt web2.0 - mäßig).
Hier mal mein Formular:
Das Javascript dazu funktioniert einwandfrei und füllt mir meine "subcat" je nach Einstellung der "maincat" mit folgender xml - erstellender Datei:
Heraus kommt wunderschönes xml wie:
Und es funktioniert auch einwandfrei.... ABER ich schaffe es nicht die angewählte subcat herauszufinden. Normalerweise würde ich einfach auf der nächsten Seite mit $_POST["subcat"] die subcat auslesen, aber das geht irgendwie nicht. (Wahrscheinlich weil ich keine habe?? aber wie lese ich das dann aus...?)
Ich hoffe ihr versteht mein Problem, sonst werde ich versuchen, ob ich mal ein beispiel hinbekomme.
Maulwurf
Ich hab mir mit Javascript und PHP eine relationales Formmenü gebastelt. Zwei Dropdown Listen, von denen die zweite abhängig von der ersten verschiedene Menüpunkte darstellt (und das halt web2.0 - mäßig).
Hier mal mein Formular:
PHP:
<select name="maincat" id="maincat" onChange="return MainCatOnChange()">
<?php $sql = "SELECT ID, name, topid FROM article_cat WHERE topid = '' ORDER BY name"; $db = mysql_query($sql);
echo "<option value=\"0\">---</option>\n";
while($row = mysql_fetch_assoc($db)) {
echo "<option value=\"".$row["ID"]."\">".$row["name"]."</option>\n";
}
?>
</select>
<select name="subcat" id="subcat" ></select>
Das Javascript dazu funktioniert einwandfrei und füllt mir meine "subcat" je nach Einstellung der "maincat" mit folgender xml - erstellender Datei:
PHP:
$xml = '';
$sql = "SELECT ID, name, topid FROM article_cat WHERE topid = '' ORDER BY name"; $db = mysql_query($sql);
$i = 0;
while($row = mysql_fetch_assoc($db)) {
$i = $i+1;
$sql2 = "SELECT ID, name, topid FROM article_cat WHERE topid = ".$i." ORDER BY name";
$db2 = mysql_query($sql2);
if ($filter == $i) {
$xml = $xml . '<maincat name="'.$row["name"].'">';
while($data = mysql_fetch_assoc($db2)) {
$xml = $xml . '<subcat id="'.$data["ID"].'">'.$data["name"].'</subcat>';
}
}
}
$xml = $xml . '</maincat>';
// send xml to client
echo( $xml );
Heraus kommt wunderschönes xml wie:
Code:
<maincat name="Rezepte">
<subcat id="4">Hauptspeisen</subcat>
<subcat id="5">Nachtisch</subcat>
<subcat id="3">Vorspeisen</subcat>
</maincat>
Und es funktioniert auch einwandfrei.... ABER ich schaffe es nicht die angewählte subcat herauszufinden. Normalerweise würde ich einfach auf der nächsten Seite mit $_POST["subcat"] die subcat auslesen, aber das geht irgendwie nicht. (Wahrscheinlich weil ich keine habe?? aber wie lese ich das dann aus...?)
Ich hoffe ihr versteht mein Problem, sonst werde ich versuchen, ob ich mal ein beispiel hinbekomme.
Maulwurf