Ho cercato ovunque! dove posso trovare la paginazione di guidoz?? grazie mille
Ho cercato ovunque! dove posso trovare la paginazione di guidoz?? grazie mille
essendo una pilla la trovi qui :
http://forum.html.it/forum/showthrea...hreadid=412253
la terza dall'altro
LOL è diventato GIUDOZ, sembra un incrocio tra un apostolo e un esperto di arti marzilali!
:maLOL:
a onor di cronaca la funzioncina che ho sul mio forum è messa meglio..![]()
http://forum.guidoz.it/viewtopic.php?t=451
ho trovato solo ora sto thread![]()
Ciao Guido![]()
ho applicato la tua funzione e funziona(scusa il gioco di parole)
bene.
mi mette però tutti i record restituiti in un unica riga, i quesiti che ti pongo sono due:
1-innanzitutto dove devo intervenire esattamente e come per
decidere quanti record devono apparire per ogni pagina;
infine:
2-se io volessi far si ad esempio che apparissero per ogni pagina 8 foto
su due righe (4 sopra e 4 sotto) come dovrei intervenire sul questo codice della pagina?
<?php
include("paging.func.php");
//connessione a mysql
mysql_connect('localhost','test','test');
//selezione del database
mysql_select_db('test');
//sottomissione della query (come usare mysql_query())
$res = paging('SELECT * FROM news');
echo "<table border='0'>\n";
/*
verifica dei risultati: $res è un array.. l'elemento zero contiene
il risultato della query per la pagina corrente... mentre l'elemento 1
che useremo dove ci pare (nell'esempio lo usiamo alla fine) contiene
il codice del minimenu' da dare semplicemente in output
*/
if (!$res[0]) { echo "non ci sono dati";}
else
{
/*sull'elemento zero si opera con un ciclo allo stesso modo
in cui si farebbe con il risultato di mysql_query()
*/
while($dati = mysql_fetch_array($res[0]))
{
echo "<td><img src=\"$dati[foto]\">
<a href=\"database2.php?id=".$dati['id']."\">".$dati['titolo'];
}
}
/*stampa del minimenu' di link alle altre pagine
(poteva essere stampato anche prima del ciclo)
*/
echo "
".$res[1];
echo "</table>";
?>
GRAZIE
nessuno
con i parametri della funzione..Originariamente inviato da remixe
Ciao Guido![]()
ho applicato la tua funzione e funziona(scusa il gioco di parole)
bene.
mi mette però tutti i record restituiti in un unica riga, i quesiti che ti pongo sono due:
1-innanzitutto dove devo intervenire esattamente e come per
decidere quanti record devono apparire per ogni pagina;
la funzione ha dei parametri cn default:
function paging($query,$x_pag=10,$num_links=5)
quindi se tu non passi il secondo parametro lo assume pari a 10 (e sono il numero dei record per pagina), e il terzo a 5 (sono il numero di pagine a cui comparirà il link nel minimenu')
ad esempio:
paging($sql,8); //l'ultimo resta a 5.. il secondo cambia a 8
paging($sql,8,7); //il secondo va a 8, l'ultim a 7
paging($sql,10,7); //l'ultimo va a 7, ma per cambiare l'ultimo dobbiamo mettere anche il secondo.. ecco perchè specifico il secondo anche se è identico al default.
Quetso naturalmnete vale per tutte le funzioni (che abbiano parametri con default)... qualsiasi buona guida di php dovrebbe parlarne abbastanza approfonditamente.
esattamente come faresti con una funzione "normale".. cioè con la normale mysql_query...infine:
2-se io volessi far si ad esempio che apparissero per ogni pagina 8 foto
su due righe (4 sopra e 4 sotto) come dovrei intervenire sul questo codice della pagina?
una cosa del genere:
in pratica apro una riga assieme all'apertura della tabella e ne chiudo una assimee alla chiusura della tabella... a quel punto se volessi fare una riga (dela tabella) ogni 4 record.. semplicemente ogni 4 record stampo chiusura della riga precedente e apertura della nuovaCodice PHP:
<?php
include("paging.func.php");
//connessione a mysql
mysql_connect('localhost','test','test');
//selezione del database
mysql_select_db('test');
//sottomissione della query (come usare mysql_query())
$res = paging('SELECT * FROM news');
echo "<table border='0'>\n<tr>";
/*
verifica dei risultati: $res è un array.. l'elemento zero contiene
il risultato della query per la pagina corrente... mentre l'elemento 1
che useremo dove ci pare (nell'esempio lo usiamo alla fine) contiene
il codice del minimenu' da dare semplicemente in output
*/
if (!$res[0]) { echo "non ci sono dati";}
else
{
/*sull'elemento zero si opera con un ciclo allo stesso modo
in cui si farebbe con il risultato di mysql_query()
*/
$i=0;
while($dati = mysql_fetch_array($res[0]))
{
if($i++%4==0) echo '</tr><tr>';
echo "<td><img src=\"$dati[foto]\">
<a href=\"database2.php?id=".$dati['id']."\">".$dati['titolo'];
}
}
/*stampa del minimenu' di link alle altre pagine
(poteva essere stampato anche prima del ciclo)
*/
echo "</tr>
".$res[1];
echo "</table>";
?>
e questo lo faccio con un semplice contatore e un if sul modulo 4 del contatore.
Salvo sviste dovrebbe funionare, ad ogni modo il meccanismo è questo.... ma non dipende assolutamente dalla mia funzione
![]()
perfetto GUIDO alla GRANDISSIMA!!..ho risolto !
mi è rimasta una stupidaggine, e cioè, non so perchè
sulla prima pagina i numeri per passare da una pagina
all'altra mi appaiono all'inizio della pagina invece che alla
fine . (questo sulla pagina 1 e basta).
se infatti clikko sulla 2 tornano regolarmente sotto.
Ti posto questo link dove puoi vedere in diretta
questa cosa ( prima però di devo chiedere per quale squadra
di calcio tifi :-)) scherzooo)
www.comunicando-web.com/test/guido.php
nessuno
non chiudi la cella dpo la stampa....
echo "<td><img src=\"$dati[foto]\">
<a href=\"database2.php?id=".$dati['id']."\">".$dati['titolo'].'</td>';
PS: a sapeere che eri della juve...![]()
forza reggina![]()
![]()
ho provato a chiudere la tabella con la correzione che mi hai postato
ma i numeri mi appaiono sempre ad inizio pagina ora anche sulla seconda
di pagina.
ok FORZA Reggina, sono Juventino ma la Reggina mi sta simpatica
come squadra.![]()
nessuno
guarda.. m' vado di fretta.. guardati il sorgente HTML e vedi se c'è altro di strano...
forse il fatto che lo stampi prima di </table>.. stampalo dopo...
Cmq è un problema HTML.. se nn rislvi chiedi lì
![]()