Ciao,
io con un ciclo while estraggo dei file dal db per confrontarli con altri (attraverso if) solo che quando eseguo lo script l' echo viene doppiato molte volte, come faccio a evitare questo?
Ciao,
io con un ciclo while estraggo dei file dal db per confrontarli con altri (attraverso if) solo che quando eseguo lo script l' echo viene doppiato molte volte, come faccio a evitare questo?
Posta il blocco del ciclo
Se l'echo è dentro al ciclo è normale, tutto che c'è all'interno del ciclo viene eseguito, appunto, ciclicamente.
Ciao!
si, questo l' avevo capito, ma vi faccio un esempio:
apro il ciclo per prendere i dati dal db...
poi apro un if e metto degli echo poi non posso chiudere il while, perche quei dati mi servono per l' if, come posso fare?
Ad ogni ciclo aggiungi i dati estratti in un array, così poi potrai utilizzarli fuori dal ciclo.
esempio veloce:
Codice PHP:
<?
$array_titoli=array();
while($r=mysql_fetch_assoc($q)){
$array_titoli[]=$r['titoli']; // aggiungo in $array_titoli il titolo del record attualmente in lettura
//oppure
array_push($array_titoli,$r['titoli']); //come commento precedente
}
print_r($array_titoli); // se volessi potrei utilizzare i titoli contenuti in $array_titoli per qualsiasi operazione
?>
si puo fare anche qualcosa del genre:
si puo? viene ripreso anche fuori dal ciclo se uso $Primo?Codice PHP:
$result = mysql_quer($query, $db);
while (mysql_fetch_array($result))
$Primo = $array[0];
$Secondo = $array[1]
}
ma fuori dal ciclo vengono estratte tutte le cose che ci sono in quella tabella?
Codice PHP:
$result = mysql_query($query, $db);
while ($array=mysql_fetch_array($result))
$Primo .= $array[0].",";
$Secondo .= $array[1].",";
}
prova invece di chiedere .Codice PHP:
$result = mysql_query($query, $db);
while ($array=mysql_fetch_array($result))
$Primo[] = $array[0];
$Secondo[] = $array[1]
}
ok, non ho ancora provato a farlo andare, ma perche nel 2° ha primo e ha secondo aggiungi []???
Scusa, é una curiosità, voglio capirlo bene quello che faccio...
Se assegni ciò che estrai dentro al ciclo a delle variabili, all'esterno del ciclo (quindi dopo che esso è stato esguito) le variabili conterranno soltanto l'ultimo risultato estratto.
Nel primo esempio di probid, si concatenano i risultati alle variabili, attraverso il punto e uguale .=
Nel secondo esempio, crea un array con tanti elementi quanti sono i record estratti.
Ciaooo!!!!!
E' praticamente il corrispondente della funzione array_push().ma perche nel 2° ha primo e ha secondo aggiungi []
Leggine la documentazione che ti ho linkato per poter rispondere alla tua domanda.
Inoltre nella pagina c'è anche una nota che fa riferimento all'uso delle parentesi quadre ($array[]="valore").