Bene, eccomi ritornato dopo un lungo periodo di assenza dovuto a vari poblemi! Ma come, si dice, chi non muore si rivede! E quindi eccomi di nuovo qua, a rompere con le domande (Ma anche ad aiutare con le risposte, se le conosco!) .
Passiamo quindi alla domanda.

Ho un DB dove ho delle categorie e per estrarle uso la ricorsione (Ovviamente!). Quindi mi sono creato una funzione che estragga il nome e l'id e li assegni ad un array:

codice:
function select ($id,$name)
        {
	   global $db, $parent;
	   $query = "SELECT id,name,parent FROM categories WHERE parent=$id ORDER BY name";
		  
	   $result = mysql_query($query,$db);
	   while ($row = mysql_fetch_array($result))
	        {
		   $menu = "$name/$row[name]";
		   $categories["$menu"] = "$row[id]";
		   select ($row['id'],$menu);
		}
	   return $categories;
        }
Ecco la funzione.

Per estrarre i nomi ed inserirli in una select uso questo codice:

codice:
while (list($name, $id) = each ($categories))
     {
	echo "<option value\"$id\">$name</option>";
     }
Il problema è che lo script mi dice che la variabile $categories non è definita! Com'è possibile?