Ciao a tutti, ho un piccolo problema di paginazione su 2 colonne.
Allora, preciso che tutto il codice che sto cercando di adattare proviene dalle pillole prese da qui.
Ho la mia bella paginazione che funziona perfettamente:
Codice PHP:
// DA QUI PARTE LA PAGINAZIONE
// RECORD PER PAGINA
$recordxpag = 3;
$query = "SELECT * FROM prodotti ORDER BY id DESC";
//INTERROGAZIONE DEL DATABASE:
$res = mysql_query($query);
$righe = mysql_num_rows($res);
$numpag = ceil($righe/$recordxpag);
if ($righe<1) {
// GESTITE L'EVENTO COME MEGLIO CREDETE
echo "non ci sono schede prodotto";
} else {
include('webtest/include/paginazione.php');
$da = (($pag-1) * $recordxpag);
$a = $da + $recordxpag;
if ($a > $righe){$a=$righe;}
for ($i = $da; $i < $a; $i++) { // TABELLA DATI
$id= mysql_result($res,$i,'id');
// QUI LA TABELLA CON LE SCHEDE PRODOTTO
// PUNTO 1 DEVO INCLUDERE QUI LA MIA TABELLA DEL PRODOTTO SU 2 COLONNE
}
E la paginazione funziona correttamente, cioe' esegue la query e restituisce il numero di pagine in base ai risultati.
Non riesco pero' a sviluppare la tabella dati su 2 colonne.
Codice PHP:
// QUESTO E' IL CODICE PER LA SUDDIVISIONE DA INSERIRE NEL PUNTO 1
// ESEGUO LA QUERY CON L'ID RECUPERATO PRIMA DALLA PAGINAZIONE
$query = @mysql_query("SELECT * FROM prodotti WHERE id = $id");
$num_record = mysql_num_rows($query);
$colonne = 2;
$tot_righe = $num_record/$colonne;
//DICHIARO TRE INDICI CHE MI SERVIRANNO
$i_x = 0;
$x_x = 0;
$k_x = 0;
$cell_width = floor(100/$colonne);
//ADESSO SCRIVO IL CODICE DI INIZIO TABELLA
echo '<table border="0" cellspacing="4" cellpadding="0" width="100%" bgcolor="#FAFAFA"><tr>';
//ADESSO SCORRIAMO I RISULTATI OTTENUTI CON UN CICLO WHILE
while($array = mysql_fetch_array($query)){
//INCREMENTO GLI INDICI PERCHÈ MI SERVIRANNO DOPO
$i_x++;
$k_x++;
$x_x++;
echo "<td>$array[titolo_prodotto]</td>";
if($i_x == $colonne) {
echo'</tr>';
if ($i_x == $colonne && (($x_x/$colonne) != $tot_righe)) {
echo'<tr>';
}
$i_x = 0;
} // FINE $I_X == $COLONNE
} //FINE DEL CICLO
if ($colonne <= $x_x){
if (($k_x%$colonne) != 0){
$indice = $k_x;
while (($indice%$colonne) != 0 ){
echo'<td>[img]spacer.gif[/img]</td>';
$indice++;
} //FINE CICLO WHILE
if(($indice%$colonne) == 0 ){
echo'</tr>';
}
} //FINE ($K%$COLONNE)!= 0
} else { //FINE IF $COLONNE <= $X
echo '</tr>';
}
//ADESSO POSSO FINALMENTE CHIUDERE LA TABELLA
echo '</table>';
Non riesco a mettere 2 risultati per riga, in pratica, ora come ora, mi visualizza si la corretta paginazione ed anche le schede vengono visualizzate, solo che vengono visualizzate una sola per riga, mentre io vorrei che venissero visualizzate 2 schede prodotto per ogni riga.
Qualche suggerimento ?
Ciaoo
Micky