Scusate se intervengo, ma credo che piuttosto che ciclare con il FOR sia più utile e meno dispendioso usare il WHILE.
Codice PHP:
$query = "SELECT descr FROM menu";
$result = mysql_query($query);
while ($voce = mysql_fetch_array($result)) {
$sottopagina = urlencode($voce['nome campo database']);
echo "<a href=menu2.php?link=$sottopagina>".$voce['nome campo database']."</a>";
}
mysql_free_result($result);
La pagina menu2.php ti conviene impostarla come segue, invece.
Codice PHP:
// recupero la variabile dalla URL, ammesso che ci sia
// altrimenti imposto un valore nullo alla stringa
(!isset($_GET['link']) ? $link = "" : $link = $_GET['link'];
$link = urldecode($link);
switch($link) {
case 'xxx' :
// codice
break;
case 'yyy' :
// codice
break;
case 'zzz' :
// codice
break;
default:
// codice
break;
}
Il problema di questo metodo è che, non sapendo in anticipo quanti e quali CASI dello switch puoi prevedere (suppongo che se usi un DB è perché il numero di menù e sottomenu sia dinamico), rischi che non ti funzioni tutto e che ti manchino dei pezzi dello switch.