Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    892

    problema con passaggio di valori

    Dunque: io ho un motore di ricerca che mi estrae dati da db Mysql.
    Dal momento che i dati possono essere molti, effettuo una paginazione passando di pagina in pagina i parametri con i valori della ricerca.
    Nella prima pagina tutto va bene: effettua l'estrazione correttamente, e pagina. Se però vado a navigare tra le pagine NON MI TROVA NIENTE: i record trovati vanno a zero. Ho controllato e ricontrollato le variabili, e sono giuste...
    Vi posto il codice:

    codice:
     <?php
    
    if ($_REQUEST['tipologia']==="tutte")
    {
    $tipologia="";
    }
    
    else
    {
    $tipologia=$_REQUEST['tipologia'];
    }
    
    if ($_REQUEST['sezione']==="tutte")
    {
    $sezione="";
    }
    else if ($_REQUEST['sezione']==="A. USL 6 Livorno")
    {
    $sezione="Livorno";
    }
    
    
    else
    {
    $sezione=$_REQUEST['sezione'];
    }
    
    if ($_REQUEST['categoria']==="tutte")
    {
    $categoria="";
    }
    
    else
    {
    $categoria=$_REQUEST['categoria'];
    }
    
    
    $parola=$_REQUEST['parola'];
    
    list($giorno, $mese, $anno) = explode('/', $_REQUEST['data_da']); 
    $da_data = "$anno-$mese-$giorno"; 
    list($giorno1, $mese1, $anno1) = explode('/', $_REQUEST['data_a']); 
    $a_data = "$anno1-$mese1-$giorno1"; 
    $stato=$_REQUEST['stato'];
    
    if ($_REQUEST['stato']==="tutti")
    {
    $stato="";
    }
    
    .......
    
    // connessione al database
    mysql_connect("ip", "utente", "password") or die("Connessione fallita !");
    // selezione del DB
    mysql_select_db("nomedb") or die("Selezione del DB fallita !");
    // esecuzione prima query
    $count = mysql_query("SELECT COUNT(id) FROM garecompless where oggetto LIKE '%$parola%' AND tipologia LIKE '%$tipologia%' AND sezione LIKE '%$sezione%' AND categoria LIKE '%$categoria%'  AND stato LIKE'%$stato%' AND giorno BETWEEN '$da_data' AND '$a_data'");
    $res_count = mysql_fetch_row($count);
    // numero totale di records
    $tot_records = $res_count[0];
    // risultati per pagina(secondo parametro di LIMIT)
    $per_page = 20;
    // numero totale di pagine
    $tot_pages = ceil($tot_records / $per_page);
    // pagina corrente
    $current_page = (!$_GET['page']) ? 1 : (int)$_GET['page'];
    // primo parametro di LIMIT
    $primo = ($current_page - 1) * $per_page;
    // esecuzione seconda query con LIMIT
    $query_limit = mysql_query("SELECT id, oggetto, categoria, tipologia, sezione, stato, DATE_FORMAT(giorno,'%d/%m/%Y') as data FROM garecompless where oggetto LIKE '%$parola%'AND tipologia LIKE '%$tipologia%' AND sezione LIKE '%$sezione%' AND categoria LIKE '%$categoria%' AND stato LIKE'%$stato%' AND giorno BETWEEN '$da_data' AND '$a_data' 
     ORDER BY giorno DESC LIMIT $primo, $per_page");
    while($results = mysql_fetch_array($query_limit))
    
    ...
    
    
    $paginazione = "Pagine totali: " . $tot_pages . "
    [";
    for($i = 1; $i <= $tot_pages; $i++) {
    if($i == $current_page) {
    $paginazione .= $i . " ";
    } else {
    $paginazione .= "<a href=\"?page=$i&parola=$parola&tipologia=$tipologia&sezione=$sezione&categoria=$categoria&stato=$stato&data_da=$da_data&data_a=$a_data\" title=\"Vai alla pagina $i\">$i</a> ";
    }
    }
    $paginazione .= "]";
    
    echo " $paginazione";
    
    mysql_free_result($count);
    mysql_free_result($query_limit);
    mysql_close();
    ?>
    Sapete dirmi dove sbaglio????


  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    892
    nessuno?

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    892
    up

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.