Ho la necessita di impaginare i risultati delle query presenti in questo file, in sostanza vorrei che venissero mostrati una quindicina di record a video e poi ci sia la possibilità di andare alla pagina successiva o precedente.
ho ptovato cosi ma non va' mi mostra tutti i numeri di pagina e basta...
ho provato solo sul primo if...
Codice PHP:
<h1>Risultati della ricerca</h1>

<?php
error_reporting
(E_ALL);
include(
"config.inc.php");
include(
"connect.inc.php");

if(
$_POST) {
   if(
$_POST['azione'] == "cerca"){
   
$chiave $_POST['chiave']; 
$keys   =   explode   (",",   $chiave);
$query   =   "";
reset   ($keys);
while   (list(,
$parola)   =   each   ($keys))
{   
$parola   =   trim($parola);
if   (
$parola   !=   "")
$query   .=   "titolo   LIKE   '%$parola%'   OR   ingredienti   LIKE   '%$parola%' OR   tipopiatto   LIKE   '%$parola%' OR   ingredienteprincipale   LIKE   '%$parola%' OR   regione   LIKE   '%$parola%' OR   note   LIKE   '%$parola%'    OR   ";
}
$query   .=   "0";
$query   =   "SELECT   id,   titolo, ingredienteprincipale, regione   FROM   DBRicette   WHERE   "   .   $query;
$count mysql_query("SELECT COUNT(*) FROM DBRicette");
$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']) ? : (int)$_GET['page'];

// primo parametro di LIMIT
$primo = ($current_page 1) * $per_page;

$query   =   "SELECT   id,   titolo, ingredienteprincipale, regione   FROM   DBRicette LIMIT $primo$per_page   WHERE   "   .   $query;

$result   =   mysql_query($query,   $db);
//echo $query;  dopo l'esecuzione di una query ne mostra il risultato a video
while   ($row   =   mysql_fetch_array($result))
{   echo   
"<a   href=\"index.php?pag=15&id=$row[id]\">"     .   "      $row[titolo]"       </a>
"
;   }
// includiamo uno dei files contenenti la paginazione
include("paginazione.php");
// in questa cella inseriamo la paginazione
echo " <tr>\n <td height=\"50\" valign=\"bottom\" align=\"center\">$paginazione</td>\n";

echo 
" </tr>\n</table>\n</div>";
}
   elseif(
$_POST['azione'] == "principale"){
$chiave $_POST['chiave']; 
$keys   =   explode   (",",   $chiave);
$query   =   "";
reset   ($keys);
while   (list(,
$parola)   =   each   ($keys))
{   
$parola   =   trim($parola);
if   (
$parola   !=   "")
$query   .=   " ingredienteprincipale   LIKE   '%$parola%'   OR   ";
}
$query   .=   "0";
$query   =   "SELECT   id,   titolo, ingredienteprincipale   FROM   DBRicette   WHERE   "   .   $query;
$result   =   mysql_query($query,   $db);
//echo $query;  dopo l'esecuzione di una query ne mostra il risultato a video
while   ($row   =   mysql_fetch_array($result))
{   echo   
"<a   href=\"index.php?pag=15&id=$row[id]\">"     .   "      $row[titolo]"      $row[ingredienteprincipale]</a>
"
;   }
}
   elseif(
$_POST['azione'] == "portata"){
$chiave $_POST['chiave']; 
$keys   =   explode   (",",   $chiave);
$query   =   "";
reset   ($keys);
while   (list(,
$parola)   =   each   ($keys))
{   
$parola   =   trim($parola);
if   (
$parola   !=   "")
$query   .=   "tipopiatto   LIKE   '%$parola%'   OR   ";
}
$query   .=   "0";
$query   =   "SELECT   id,   titolo, tipopiatto   FROM   DBRicette   WHERE   "   .   $query;
$result   =   mysql_query($query,   $db);
//echo $query;  dopo l'esecuzione di una query ne mostra il risultato a video
while   ($row   =   mysql_fetch_array($result))
{   echo   
"<a   href=\"index.php?pag=15&id=$row[id]\">"     .   "      $row[titolo]"      $row[tipopiatto]</a>
"
;   }

}
  };
?>
questo è il file di paginazione
Codice PHP:
<?php

$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 .= "]";

?>