- Home
- Categorie
- Coding e Sistemistica
- PHP
- ancora impaginazione
-
ancora impaginazione
Buonasera
Questa è una pagina costruita per vedere tutte le news inserite nel mio db,ho la necessità di fare vedere in ogni pagina un numero di 10-20 record per pagina.se i record sono più di un 100naio vi è la necessità di dividere il numero di record.
Domanda qualcuno mi può aiutare per come inserire una paginazione? ho provato diversi script ma non essendo un esperto non ci sono riuscito.
Grazie per chi vorrà completare questo script.
<html>
<body>
<table width="95%" border="1" cellspacing="0" cellpadding="1" align="center">
<tr>
<td colspan="3" bgcolor="#000066">
<div align="center"><font color="#FFFFFF"><b>VEDI TUTTE LE NEWS INSERITE IN AREA PROGETTI</b></font></div></td>
</tr>
<tr>
<td width="10%" >
<div align="center"><b>Data</b></div>
</td><td>
<div align="center"><b>Contenuto</b></div>
</td>
<td width="15%">
<div align="center"><b>Vedi Notizia</b></div>
</td><?php
$db_username = 'root';
$db_password = '';
$db_host = 'localhost';$link = mysql_connect("$db_host", "$db_username","$db_password") or die("Errore connessione: ". mysql_error());
mysql_select_db('pupo') or die("Errore apertura database: " . mysql_error());$strsql = "SELECT idnotizia,data,percorso,news FROM notizieprog ORDER BY data DESC ";
$rs = @mysql_query("$strsql",$link) or die("Errore query database: " . mysql_error());while ($riga = mysql_fetch_array($rs)) {
$str_id = $riga['idnotizia'];
$str_data= $riga['data'];
$str_percorso= $riga['percorso'];
$str_news = $riga['news'];echo "<tr><td align='left'>$str_data</td><td align='left'> $str_news</td><td>
<a target='_blank' href="$str_percorso">Apri</a>
</td> ";}
?></table>
</body>
</html>
ho provato questo script, che ho trovato sotto internet riesco a vedere solo il numero delle pagine ma non riesco a vedere i dati e collegarlo alla mio lavoro.Non è necessario questo script accetto qualsiasi forma o script adeguato Grazie Biagio
function pagination_4($total_pages,$page){
global $webpage;
$pagination="";
if($total_pages!=1){
/Impostiamo il numero massimo di elementi visualizzabili all'apertura della patina, in questo caso 10;/
$max = 10;
//Usiamo questa variabile nel cilco for piu sotto;
$max_links = $max+1;
$h=1;
//Se la pagina è > di $max_links
if($page>$max_links){
//Facciamo partire il nostro loop
$h=(($h+$page)-$max_links);
}
//Se la pagina non è l'unica
if($page>=1){
//estendiamo il nosto range di link visualizzabili
$max_links = $max_links+($page-1);
}
//Se il numero massimo di link visualizzabili, supera il numero totale delle pagine, allora il numero di links è =numero totale di pagine
if($max_links>$total_pages){
$max_links=$total_pages+1;
}
//Creiamo i link prima e prev
if($page>1){
$pagination.="<a href=".$webpage."?page=1><small>prima</small></a>
<a href=".$webpage."?page=".($page-1).">Prev</a>";
}
//Creiamo le pagine linkate
for ($i=$h;$i<$max_links;$i++){
if($i==$page){
$pagination.="<a>".$i."</a>";
}
else{
$pagination.="<a href=".$webpage."?page=".$i.">".$i."</a>";
}
}
//Creiamo i link Next last buttons
if(($page >="1")&&($page!=$total_pages)){
$pagination.="<a href=".$webpage."?page=".($page+1).">Next</a>
<a href=".$webpage."?page=".$total_pages."><small>Last</small></a>";
}
}
//if one page of results
else{
$pagination.="";
}return($pagination);
}
echo pagination_4($total_pages,$page);Risultato : prima PREV 1 2 3 4 5 6 7 8 9 10 Next ultima
in questo particolare caso, vengono visualizzate le prime 10 pagine.se ve ne sono altre, ad esempio 7, questo è il risultato, se clicchiamo su Next:
risultato: prima Prev 7 8 9 10 11 12 13 14 15 16 Next ultima
-
Risultato : prima PREV 1 2 3 4 5 6 7 8 9 10 Next ultima
in questo particolare caso, vengono visualizzate le prime 10 pagine.se ve ne sono altre, ad esempio 7, questo è il risultato, se clicchiamo su Next:
risultato: prima Prev 7 8 9 10 11 12 13 14 15 16 Next ultimaquesto script l'ho usato pure io... funziona in quel modo... ti fa vedere per un massimo di 10 pgine... è coodo se si ha molti dati...
$pagination="";
quel pezzo di codice deve rimanere vuoto se non si passano variabili nell'indirizzo.. ma se non ti funziona è perchè passi le variabili
esempio senza variabili:
nomesito.it/index.php
esempio con variabili:
nomesito.it/index.php?variabile=qualcosa
a sto punto: $pagination="variabile=qualcosa";
o meglio passarci una variabile $pagination="$variabile";
-
Grazie per aver risposto, non sono un esperto altrimenti più che chiedere darei notizie.
Non riesco a capire come collegare i due script per aver il risultato voluto.
nel secondo script non vedo come estrarre i dati dal mio db e formattarli come ho fatto nella prima parte .Puoi collegARE I DUE SCRIPT E FARNE UNO FUNZIONANTE?
CIAO BIAGIO