Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    estrarre record con ciclo for

    salve,

    per estrarre records ho sempre utilizzato un ciclo while
    codice:
    $query_limit = mysql_query("select * from blablabla");
    while($row = mysql_fetch_array($query_limit1)) {
    ho la necessità di estrarre i record con un ciclo for, ho provato con
    codice:
    $query_limit = mysql_query("select * from blablabla");
    $records=mysql_num_rows($query_limit1);
    for i che va da 0 a $records esegui....
    ma estrae sempre lo stesso record per $records volte.

    non so come farlo andare avanti con il ciclo for.

    Mi rendo conto che è una domanda banale ma non mi riesce

  2. #2
    E' tardi e sono stanca, forse per questo farei bene a non risponderti però almeno qualcuno ti ha risp no???
    Potresti fare anche così (mi viene in mente solo questa soluzione momentaneamente):
    SUPPONIAMO CHE LA QUERY SIA QUESTA:
    select nome, cognome, eta from blablabla --> messa nella variabile $query_limit
    Codice PHP:
    $i=0;
    while (
    $row mysql_fetch_array($query_limitMYSQL_NUM)) {
         
    $nome[$i]=$row[0];
         
    $cognome[$i]=$row[1];
         
    $eta[$i]=$row[2];
         
    $i++;
    }
    $totale_records=sizeof($nome);
    for(
    $j=0;$j<$totale_records;$j++){
       
    fai quello che devi fare considerando che ormai hai ogni campo in un vettore 

    che dici???

  3. #3
    Utente di HTML.it L'avatar di jcsnake
    Registrato dal
    Jun 2010
    Messaggi
    629
    Ciao, scusami ma la tua necessità di utilizzare un ciclo for rispetto ad un while qual è?Puoi traformare benissimo un while in un ciclo "definito"...semmai questa definizione può essere utilizzata.

  4. #4
    A parte che tutto ciò che fai con un ciclo for puoi benissimo farlo anche con un ciclo while per cui non vedo la necessità di utilizzare un ciclo for.

    Prova così:

    Codice PHP:
    $result mysql_query("...");
    for (
    $i=0$i mysql_num_rows($result); $i++) {
        
    $row mysql_fetch_row($result);

    oppure:

    Codice PHP:
    $result mysql_query("...");
    for (
    $i=0$i mysql_num_rows($result); $i++) {
        
    $row mysql_result($result$i));

    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  5. #5
    grazie a tutti per le risposte e scusate per il ritardo.

    cerco di spiegarvi il mio problema...
    devo far stampare una tabella composta da massimo 3 colonne (chiaramente in base ai records)

    quindi
    123
    456
    789
    e così via..


    io pensavo di fare un ciclo while esterno che scorre tutto
    e dentro questo ciclo while un ciclo for da 0 a 2 (012=3 ma questi sono dettagli su cui ragionare dopo)

    il problema è che invece di stamparmi quanto sopra
    mi stampa tre volte il solito record
    cioè esegue 3 volte il ciclo for sul primo record
    poi 3 volte sul secondo e così via..

    e devo risolvere in qualche modo

    quindi pensavo di fare 2 cicli for.. ma ho scoperto che non riesco a dirgli "dopo il primo ciclo vai al record successivo"

  6. #6
    praticamente mi stampa
    111
    222
    333
    444
    etc.

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.