• User Attivo

    Problemi paginazione dati

    Ciao ragazzi, ho un problema con la paginazione dei dati, ho seguito la guida php.html.it/articoli/leggi/857/paginazione-di-dati/1/
    avevo anche già provato a usare questa guida e non avevo avuto problemi, adesso invece ho questo problema: mi calcola le pagine, mi mette i link, ma quando clicco sulla seconda pagina non mi fa vedere i risultati della query ma stampa quello che ho nell'else cioè ' nessun risultato prova a cambiare i criteri di ricerca ': il codice è questo:
    vini.php:
    function mostra_vini(){
    global $miaconn,$id;

    $tipo='tutti'; if (isset($_POST['tipo'])){$tipo=$_POST['tipo'];}
    $regione='tutti'; if (isset($_POST['l1'])){$regione=$_POST['l1'];}

    // esecuzione prima query
    $count = mysql_query("SELECT COUNT(vino_id) FROM vino");
    $res_count = mysql_fetch_row($count);
    // numero totale di records
    $tot_records = $res_count[0];
    // risultati per pagina(secondo parametro di LIMIT)
    $per_page = 10;
    // 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;
    $output.="<div align="center">\n<table>\n";
    $sql='SELECT *,nomeregione FROM vino INNER JOIN regioni ON vino.vino_idregione=regioni.idregione WHERE '.$where.' ORDER BY vino_nome LIMIT '.$primo.','.$per_page;
    $dati=mysql_query($sql,$miaconn);
    if(mysql_num_rows($dati)>0){
    while($array=mysql_fetch_array($dati)){
    $output.=nome tipo regione ecc
    ..}
    // paginazione
    $paginazione = "Pagine totali: " . $tot_pages . "
    [";
    for($i = 1; $i <= $tot_pages; $i++) {
    if($i == $current_page) {
    $paginazione .= $i . " ";
    } else {
    $paginazione .= "<a href="?page=$i" title="Vai alla pagina $i">$i</a> ";
    }
    }
    $paginazione .= "]";
    // in questa cella inseriamo la paginazione
    $output.="<tr>\n <td height="50" valign="bottom" align="center">$paginazione</td>\n";

    }
    else{$output.='<tr><td colspan="4" align="center"><b>La ricerca non ha portato risultati, prova a cambiare i criteri di ricerca</b></td></tr>';}
    $output.='</table>';
    return($output);
    }

    Perchè perdo i dati della ricerca quando passo alla seconda pagina?Grazie Simone


  • User Attivo

    Mi correggo, qualsiasi tipo di ricerca faccio mi mette sempre 8 pagine di link indipendentemente dal numero dei record, che poi non vanno.


  • User Attivo

    Se può essere d'aiuto mi da un errore alla linea 27:
    Notice: Undefined index: page in D:\Inetpub\webs\italianbestwineit\vini_italiani2.php on line 27

    la riga interessata è questa:
    $current_page = (!$_GET['page']) ? 1 : (int)$_GET['page'];

    UUUUPPP!!!