problemer med rekursiv funktion
?><select name="skod" multiple="true">
<?
while ($row = mysql_fetch_assoc($qh))
{
echo "<option value=\"$row[id]\">$row[navn]</option>";
$level = 0;
foldUd($row['id']);
}
//Fold ud er en funktion som denne:
function foldUd($id)
{
global $level;
$level++;
$sql = "SELECT * FROM inst_cat WHERE parent = '$id'";
$qh = mysql_query($sql);
while ($row = mysql_fetch_assoc($qh))
{
echo "<option value=\"row[id]\">";
echo str_repeat('..',$level);
echo "$row[navn] </option>";
foldUd($row['id']);
}
mysql_free_result($qh);
}
echo("</select>");
?>
Hej eksperter, jeg har fundet et script her på eksperten som jeg har forsøgt at tilpasse det kan ses på http://home.sajbar.dk/select/test.php
problemet er at den ikke rykker tilbage ud igen,
under overskole skulle stå ude som et niv 2. altså ligesom folkeskole og under over underskole skulle så stå under "under overskole" som et niv 3
håber der er en der kan se hvad pokker der skal ændres for at den gider gøre det "rigtigt" er ikke den store haj til rekursive funktioner hvorfor det vil være at foretrække at jeg kunne få rettet mit eget kode til ;)
database strukturen ser således ud:
+--------+----------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+--------+----------+------+-----+---------+----------------+
| id | int(11) | | PRI | NULL | auto_increment |
| parent | int(11) | | | 0 | |
| navn | tinytext | | | | |
+--------+----------+------+-----+---------+----------------+
