Visualizzazione dei risultati da 1 a 4 su 4

Discussione: Ciclo for

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929

    Ciclo for

    ciao a tutti,

    non riesco a uscire da un ciclo for ho scritto il problema commentando il codice per semplificare la spiegazione
    codice:
    	// SE $lettera è diverso da '' eseguo la query tranquillamente e salto il ciclo
    	if($lettera != ''){
    		$query_glossario = "SELECT * FROM `glossario` WHERE `nome` LIKE '$lettera%'  ORDER BY `nome` ASC";
    		$es_glossario = mysql_query($query_glossario, $connessione) or die(mysql_error());
    		$totalRows_es_glossario = mysql_num_rows($es_glossario);
    	}else{
    	// Altrimenti faccio un ciclo in modo da ricavare la lettera e controllare se esiste una parola che inizia con la lettera trovata
    		for($i=0;$i<=25;$i++){
    			$query_alfabeto = "SELECT *  FROM `alfabeto` WHERE `id` = '$i'";
    			$es_alfabeto = mysql_query($query_alfabeto, $connessione) or die(mysql_error());
    			$totalRows_es_alfabeto = mysql_num_rows($es_alfabeto);
    			$row_es_alfabeto = mysql_fetch_assoc($es_alfabeto);
    			$lettera1 = $row_es_alfabeto['lettera'];
    			$query_glossario = "SELECT * FROM `glossario` WHERE `nome` LIKE '$lettera1%'  ORDER BY `nome` ASC";
    			$es_glossario = mysql_query($query_glossario, $connessione) or die(mysql_error());
    			$totalRows_es_glossario = mysql_num_rows($es_glossario);
    			// se la parola esiste voglio uscire dal ciclo, ho messo il break ma il ciclo continua
    				if($totalRows_es_glossario > 0){
    					$row_es_glossario = mysql_fetch_assoc($es_glossario);
    					$lettera = $row_es_glossario['lettera'];
    					break;
    				}
    		}
    	
    }
    Grazie mille

  2. #2
    Utente di HTML.it
    Registrato dal
    Jan 2005
    Messaggi
    101
    al posto di "break;" metti $i=26;

    nn so se funziona.. ma potrebbe..

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929
    non cambia nulla io potrei uscire dal ciclo anche quando $i = 1 :master:

  4. #4
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929
    soluzione

    Codice PHP:
        // SE $lettera è diverso da '' eseguo la query tranquillamente e salto il ciclo
        
    if($lettera != ''){
            
    $query_glossario "SELECT * FROM `glossario` WHERE `nome` LIKE '$lettera%'  ORDER BY `nome` ASC";
            
    $es_glossario mysql_query($query_glossario$connessione) or die(mysql_error());
            
    $totalRows_es_glossario mysql_num_rows($es_glossario);
        }else{
        
    // Altrimenti faccio un ciclo in modo da ricavare la lettera e controllare se esiste una parola che inizia con la lettera trovata
            
    for($i=0;$i<=25;$i++){
                
    $query_alfabeto "SELECT *  FROM `alfabeto` WHERE `id` = '$i'";
                
    $es_alfabeto mysql_query($query_alfabeto$connessione) or die(mysql_error());
                
    $totalRows_es_alfabeto mysql_num_rows($es_alfabeto);
                
    $row_es_alfabeto mysql_fetch_assoc($es_alfabeto);
                
    $lettera_1 $row_es_alfabeto['lettera'];
                if(
    $lettera_1 != ''){
                
    $query_glossario_1 "SELECT * FROM `glossario` WHERE `nome` LIKE '$lettera_1%'  ORDER BY `nome` ASC";
                
    $es_glossario_1 mysql_query($query_glossario_1$connessione) or die(mysql_error());
                
    $totalRows_es_glossario_1 mysql_num_rows($es_glossario_1);
                
    // se la parola esiste voglio uscire dal ciclo, ho messo il break ma il ciclo continua
                
    }
                    if(
    $totalRows_es_glossario_1 0){
                        
    $query_glossario "SELECT * FROM `glossario` WHERE `nome` LIKE '$lettera_1%'  ORDER BY `nome` ASC";
                        
    $es_glossario mysql_query($query_glossario$connessione) or die(mysql_error());
                        
    $totalRows_es_glossario mysql_num_rows($es_glossario);
                        break;
                    }
            }
        


Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.