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

    fetch assoc non estrae tutte le righe

    Salve,
    Sono nuovo del forum e non sono riuscito a trovare la spiegazione a questo mio piccolo problema...
    Ho un database che interrogo tramite query SQL.... In phpmyadmin se eseguo la query nella finestra SQL, ottengo tutte le righe interessate.... Quando eseguo la query tramite PHP e poi col ciclo while, cerco di estrarre i dati prima detti, ottengo meno righe..... il numero di righe interessate dalla query tramite l'istruzione num_rows e il numero di righe ottenute dalla finestra SQL corrisponde... ma differisce dal numero di righe che ottengo col ciclo while e fetch assoc..... Come mai?
    Ultima modifica di Templare77; 25-02-2018 a 11:15

  2. #2
    oggi fa freddo per colpa di Burian, quindi la mia boccia di vetro non si accende. Appena fa un po' più caldo la accendo e vedo da lontano il tuo codice per debuggarlo

  3. #3
    Quote Originariamente inviata da optime Visualizza il messaggio
    oggi fa freddo per colpa di Burian, quindi la mia boccia di vetro non si accende. Appena fa un po' più caldo la accendo e vedo da lontano il tuo codice per debuggarlo
    Scusa hai ragione, ma alla fine è un semplice codice comprendente una query ed un ciclo while:

    codice:
    $query="SELECT ID_INCONTRI, FED_CAMP, SQ_H, SQ_A, DATA_ORA,".$fed." LOGO_CASA, LOGO_TRAS FROM Archivio";
    if ($result = $mysqli->query($query)) {
                if ($result->num_rows==0) {
                  echo '<H1 style="text-align: center">ATTENZIONE!!! NESSUN INCONTRO TROVATO X QUESTA FEDERAZIONE!</H1>';
                  die;
                }
                while ($row = $result->fetch_assoc()) {
                  $tmp_NS=explode(' ',$row['DATA_ORA']);
                  $data_incontro_NS=str_replace('(','',$tmp_NS[0]);
                  $ora_incontro_NS=str_replace(')','',$tmp_NS[1]);
    
    
    
    
                  // if ($data_incontro_NS>date('d/m/Y')||(  $data_incontro_NS==date('d/m/Y')&&$ora_incontro_NS>date("H:i")  )) {
                    $arr_incontri_NS[$row['ID_INCONTRI']]=$row['SQ_H'].' - '.$row['SQ_A'].' '.$row['DATA_ORA'];
                    $arr_logo[$row['ID_INCONTRI']]=$row['LOGO_CASA'].'@'.$row['LOGO_TRAS'];
                  // }
                }
    $result->num_rows mi dà il giusto numero di righe (uguali a quelle che ottengo in PhpMyAdmin tramite la finestra immediata di SQL), però eseguendo il ciclo WHILE, nell'array $arr_incontri_NS, ci vanno a finire meno dati di quelli che dovrei ottenere, o di quelli conteggiati da num_rows

  4. #4
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,135
    L'unica apparente spiegazione è che ID_INCONTRI non sia univoco

  5. #5
    Quote Originariamente inviata da luca200 Visualizza il messaggio
    L'unica apparente spiegazione è che ID_INCONTRI non sia univoco
    Boh. Ora funziona.. Secondo me era colpa di Aruba

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 © 2020 vBulletin Solutions, Inc. All rights reserved.