Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    168

    [php] ciclo salta degli elementi

    salve ho un problema con questo codice

    codice:
    if($HTTP_POST_VARS){
    while(list($lvar,$lvalue)=each($HTTP_POST_VARS)){
    
    if(ereg("^riga",$lvar,$unarray)){
    
    $pezzi=explode("|",$lvalue);
    $idprodotto=prodotto($pezzi[0]);
    $sent++;
    $note=$pezzi[1];   
    $quantita=$pezzi[2];
    $prezzo=$pezzi[3];
    $iva=$pezzi[5];
    $misura=$pezzi[6];
    
    
    echo  "$sent - $note - $quantita - $misura - $iva 
    ";
    }}}
    quando inserisco una 30ina di records, me ne stampa a video sempre 26 o 27...

    a volte inserento 8 records me ne stampa 6... non riesco a capire perchè...

    il problema capita abbastanza random

  2. #2
    Moderatore di Off Topic, Kickstarter e XML L'avatar di Sky
    Registrato dal
    Jul 2000
    residenza
    Roma
    Messaggi
    1,053
    Probabilmente perché la ricerca fatta da ereg() in alcuni record restituisce FALSE.
    Puoi fare la prova del nove rimjuovendo temporaneamente il controllo if (). Se è come penso, senza di esso vedrai tutti i record stampati a schermo.
    Lo Stato deve dare ai cittadini, come diritto, ciò che la mafia dà come favore.
    Carlo Alberto dalla Chiesa

    Facebook | Twitter | Last.fm | LinkedIn | Quora

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    168
    dici così?

    codice:
    
    if($HTTP_POST_VARS){
    while(list($lvar,$lvalue)=each($HTTP_POST_VARS)){
    
    
    
    $pezzi=explode("|",$lvalue);
    $idprodotto=prodotto($pezzi[0]);
    $sent++;
    $note=$pezzi[1];   
    $quantita=$pezzi[2];
    $prezzo=$pezzi[3];
    $iva=$pezzi[5];
    $misura=$pezzi[6];
    
    
    echo  "$sent - $note - $quantita - $misura - $iva 
    ";
    }}

  4. #4
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    168
    ho provato cosi... stampa tutte le righe... solo che mi mette una 10ina di righe vuote avanti e un paio alla fine della lista...

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    168
    è un problema del metodo ereg?? o dei suoi parametri?

  6. #6
    ciao, scusa ma non ho capito una cosa

    while (list($lvar,$lvalue)=each($HTTP_POST_VARS)) {

    dovrebbe essere una condizione del while cioè esegue il tutto finchè non si verifica la condiziona.
    solo che a quanto vedo c'è una assegnazione anzichè un confronto,
    ossia c'è = anzichè ==

    come mai?

    non dovrebbe essere così:

    while(list($lvar,$lvalue)==each($HTTP_POST_VARS)){


    prova un po così...vediamo cosa accade...

  7. #7
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    168
    Parse error: parse error, expecting `'=''

  8. #8
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    168
    come ha detto sky... ci deve essere qualche problema con ereg...

  9. #9
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    168
    nessuno ha dritte per usare ereg?

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.