Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. Categorie
    3. Coding e Sistemistica
    4. Coding
    5. ricorsione
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • P
      pupah User Newbie • ultima modifica di

      ricorsione

      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!

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • T
        thedarkita ModSenior • ultima modifica di

        Ciao pupah,

        Fai un echo delle query, e vedi se vengono generate correttamente.
        Comunque quello che stai facendo, secondo me, è fattibile direttamente con le subquery.

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • P
          pupah User Newbie • ultima modifica di

          La query è giusta ma sembra vada in loop e non ne esce più..è sbagliato il mio codice?..help..

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • T
            thedarkita ModSenior • ultima modifica di

            Stai richiamando la funzione update_node all'interno della stessa, continuamente per cui è un loop infinito.

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • D
              deramer User • ultima modifica di

              Nel ciclo while modifichi la variabile $result per cui quando esso ripeterà il controllo troverà tutt'altro rispetto ai valori di partenza.

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              Caricamento altri post
              Rispondi
              • Topic risposta
              Effettua l'accesso per rispondere
              • Da Vecchi a Nuovi
              • Da Nuovi a Vecchi
              • Più Voti