funzione ricorsiva

  • Creatore Discussione Creatore Discussione pupah
  • Data di inizio Data di inizio

pupah

Nuovo Utente
12 Giu 2010
5
0
0
Ciao!
ho un problema con una funzione ricorsiva che va in loop..non mi funziona proprio..help..

posto qui il codice!Ho un nodo A con due figli B e C e ogni figlio ha altri nodi..quindi un albero..ogni volta devo aggiornare per ogni ramo tutti i suoi figli..
quindi aggiorno B, i figli di b e tutti i figli dei figli..
poi C, i suoi figli e tutti i figli dei figli..


function update_node($record,$value){
$result = mysql_query('select id from node where node_id='{$record}' and deleted=0');
while ($row = mysql_fetch_assoc($result)) {
$result = mysql_query('update node set code='{$value}' where node_id='{$row['id']}' and deleted=0');
update_node($row['id'],$valore);
}
}

grazie!
 
ciao
se puoi metti degli echo cosi vedi come si ciclano i vari $rov[id]

PHP:
function update_node($record,$value){
	echo "valore ingresso alla funzione ".$record."<br>";
	$result = mysql_query('select id from node where node_id='{$record}' and deleted=0');
	while ($row = mysql_fetch_assoc($result)) {
		echo "&nbsp;&nbsp;&nbsp;&nbsp;valor1 da while ".$row['id']."<br>";
		$result = mysql_query('update node set code='{$value}' where node_id='{$row['id']}' and deleted=0');
		update_node($row['id'],$valore);
	}
}
questo per farti un'idea di dove si potrebbe trovare l'inghippo
 
All'interno del ciclo while modifichi il valore della variabile $result che è la stessa che controlli nella condizione del while stesso.
 
e quindi?è solo qui l'errore?..sembra vada in loop e non ne esce più..help..
 
Basta fare una prova! Se uno modifica erroneamente la condizione di un ciclo all'interno di questo potrebbe succedere di tutto. Basta cambiare nome alla variabile interna al ciclo while.
 

Discussioni simili