suddivisione dati mysql in tabella

achille610

Utente Attivo
18 Mag 2015
34
0
6
Ciao a tutti,
avrei una domanda da porre, io utilizzo una paginazione che mi restituisce i dati della tabella perfettamente 1 ad uno ma di seguito.

io vorrei che i dati nn fossero in verticale ma in orizzontale per capirci a multipli di 3 per riga.

qualcuno sa come accidenti si fa, smantellando sul web nn trovo nulla

foto di esempio: tabella.jpg

script attuale:

PHP:
<?php 
//includiamo il file della classe 
@require("paginazione.php"); 

//connettiamoci a MySQL e selezioniamo il database 
class MySQL 
{  
function MySQL()  
{  
require "db_connect.php";
}  
}  

$data = new MySQL(); 

// istanziamo la classe per l'impaginazione 
$p = new Paging; 

// numero massimo di risultati per pagina 
$max = 10; 

// identifichiamo la pagina da cui iniziare la numerazione 
$inizio = $p->paginaIniziale($max); 


// contiamo i records nel database 
// contiamo i records nel database 
$query_count = @mysql_query(
"SELECT * FROM
     sito INNER JOIN tipologia ON (sito.tipologiaid=tipologia.id )
     INNER JOIN sito ON (sito.cotturaid=cottura.id )
     INNER JOIN sito ON (sito.difficoltaid=difficolta.id )
       INNER JOIN users ON (sito.user_id=users.id)
    
       
WHERE
 sito.sito='pippo' ORDER BY `id_annunci` DESC ")
    
     or die (mysql_error()); 
$count = @mysql_num_rows($query_count) or die (mysql_error()); 

// troviamo il numero delle pagine che dovr� essere contato
$pagine = $p->contaPagine($count, $max); 

// limitiamo la SELECT al numero di risultati per pagina 
$obj_titolo = @mysql_query(
"SELECT * FROM
     sito INNER JOIN tipologia ON (sito.tipologiaid=tipologia.id )
     INNER JOIN sito ON (sito.cotturaid=cottura.id )
     INNER JOIN sito ON (sito.difficoltaid=difficolta.id )
       INNER JOIN users ON (sito.user_id=users.id)
    
       
WHERE
sito.sito='pippo' ORDER BY `id_annunci` DESC LIMIT ".$inizio.",".$max) or die (mysql_error());


//recuperiamo i dati da stampare 


while ($row = mysql_fetch_array($obj_titolo)) {  

$click_annuncio = $row['click_annuncio']; 
$id_annunci = $row['id_annunci']; 
$user_id = $row['id']; 
  
  $messaggio = substr($row['messaggio'], 0, 35);  
  $mq = $row['mq'];  
  $tipologia = $row['tipologia']; 
 ecc ecc......



// stampiamo i nostri dati 

echo" <h5><table width='90%'>"; 
  echo" <tr>"; 
   echo" <p class='three'><td colspan='3'></td>"; 
 echo" </tr>"; 
 echo" <tr>"; 
  echo"  <td width='14%' bgcolor='#FFFFFF'> </td>"; 
  echo"  <td width='85%' bgcolor='#FFFFFF'><table width='100%'>"; 
   echo"   <tr>"; 
    echo"    <td><a href=\"sito.php?id=$id_annunci\"/><img src='immagini2ricette.php?id_annunci=$id_annunci' name='nome_file' alt'nome_file' class='img-responsive'  /></a><br /></td>"; 
    echo"  </tr>"; 
    echo"  <tr>"; 
      echo"  <td> <a href=\"sito.php?id=$id_annunci\"/><h3>$titolo</h3></a></td>";
echo"</tr>"; 
 echo"     <tr>"; 
    echo"    <td><a href=\"sito.php?id=$id_annunci\"/><button class=\"btn btn-primary pull-left btnNext\">continue reading ...</button><br /><br /></td>"; 
    echo"  </tr>"; 
   echo" </table>"; 
  echo"  <td></td>"; 
  echo"</tr>"; 
echo"</table><hr /></h5>"; 
} 

//l'errore dovrebbe essere qui chi mi aiutaaaaaa  


//mostriamo le pagine 
$lista = $p->listaPagine($_GET['p'], $pagine); 
echo $lista . "<br>"; 

//mostriamo il navigatore Precedente/Successiva 
$navigatore = $p->precedenteSuccessiva($_GET['p'], $pagine); 
echo $navigatore; 
?>
 
Ultima modifica:
Detto cosi sembra davvero molto semplice :( ma potresti farmi un esempio oppure girarmi un link per capire meglio la cosa ??

grazie
 
Si Achille, l'hai detto è semplicissimo, ti posto il tuo codice con la correzione, poi per fare la suddivisione di 3 righe in 3 righe, non posso dovrei vedere i contenuti per potermi regolare.
PHP:
 <?php 
//includiamo il file della classe 
@require("paginazione.php"); 

//connettiamoci a MySQL e selezioniamo il database 
class MySQL 
{  
function MySQL()  
{  
require "db_connect.php";
}  
}  

$data = new MySQL(); 

// istanziamo la classe per l'impaginazione 
$p = new Paging; 

// numero massimo di risultati per pagina 
$max = 10; 

// identifichiamo la pagina da cui iniziare la numerazione 
$inizio = $p->paginaIniziale($max); 


// contiamo i records nel database 
// contiamo i records nel database 
$query_count = @mysql_query(
"SELECT * FROM
     sito INNER JOIN tipologia ON (sito.tipologiaid=tipologia.id )
     INNER JOIN sito ON (sito.cotturaid=cottura.id )
     INNER JOIN sito ON (sito.difficoltaid=difficolta.id )
       INNER JOIN users ON (sito.user_id=users.id)
    
       
WHERE
 sito.sito='pippo' ORDER BY `id_annunci` DESC ")
    
     or die (mysql_error()); 
$count = @mysql_num_rows($query_count) or die (mysql_error()); 

// troviamo il numero delle pagine che dovr� essere contato
$pagine = $p->contaPagine($count, $max); 

// limitiamo la SELECT al numero di risultati per pagina 
$obj_titolo = @mysql_query(
"SELECT * FROM
     sito INNER JOIN tipologia ON (sito.tipologiaid=tipologia.id )
     INNER JOIN sito ON (sito.cotturaid=cottura.id )
     INNER JOIN sito ON (sito.difficoltaid=difficolta.id )
       INNER JOIN users ON (sito.user_id=users.id)
    
       
WHERE
sito.sito='pippo' ORDER BY `id_annunci` DESC LIMIT ".$inizio.",".$max) or die (mysql_error());


//recuperiamo i dati da stampare 


while ($row = mysql_fetch_array($obj_titolo)) {  

$click_annuncio = $row['click_annuncio']; 
$id_annunci = $row['id_annunci']; 
$user_id = $row['id']; 
  
  $messaggio = substr($row['messaggio'], 0, 35);  
  $mq = $row['mq'];  
  $tipologia = $row['tipologia']; 
 ecc ecc......



// stampiamo i nostri dati 

echo" <h5><table width='90%'>"; 
  echo" <tr>"; 
   echo" <p class='three'><td colspan='3'></td>"; 
 echo" </tr>"; 
 echo" <tr>"; 
  echo"  <td width='14%' bgcolor='#FFFFFF'> </td>"; 
  echo"  <td width='85%' bgcolor='#FFFFFF'><table width='100%'>"; 
   echo"   <tr>"; 
    echo"    <td><a href=\"sito.php?id=$id_annunci\"/><img src='immagini2ricette.php?id_annunci=$id_annunci' name='nome_file' alt'nome_file' class='img-responsive'  /></a><br /></td>"; 
    echo"  </tr>"; 
    echo"  <tr>"; 
      echo"  <td> <a href=\"sito.php?id=$id_annunci\"/><h3>$titolo</h3></a></td>";
echo"</tr>"; 
 echo"     <tr>"; 
    echo"    <td><a href=\"sito.php?id=$id_annunci\"/><button class=\"btn btn-primary pull-left btnNext\">continue reading ...</button><br /><br /></td>"; 
    echo"  </tr>"; 
   echo" </table>"; 
  echo"  <td></td>"; 
  echo"</tr>"; 
echo"</table><hr /></h5>"; 
} 

//l'errore dovrebbe essere qui chi mi aiutaaaaaa  


//mostriamo le pagine 
$lista = $p->listaPagine($_GET['p'], $pagine); 
echo $lista; 

//mostriamo il navigatore Precedente/Successiva 
$navigatore = $p->precedenteSuccessiva($_GET['p'], $pagine); 
echo $navigatore; 
?>
Prova così e fammi sapere.
Ciao
 
Ok, ho tolto il br ma sto impazzendo per trovare un css d'esempio che fa al mio caso, io vorrei come da immagine che la foto e il titolo si vedono in orizzontale e nn in verticale.

domani cerco meglio

grazie mille per ora
 
Ciao,
quello che sto realizzando o meglio vorrei realizzare sta nell'area riservata del mio sito di ricette, al momento come ti ho detto ho i risultati delle mie ricette dove vedo le statistiche sono in verticale, invece io li vorrei in orizontale come da immagine.

Ma nn ci riesco :(

ishot-531.jpg
 
ciao
ti faccio uno schema per incolonnare 3 a 3 come ho usato nel mio sito
PHP:
<div id="destro">
<?php
//......
$tot=0;
$conta=1;
$sono=mysql_num_rows($result);
echo "<table>";//con tutti i css del caso
while($riga=mysql_fetch_array($result)){
	$uno=$riga['uno'];
	$due=$riga['due'];
	if($conta==1){ echo "<tr>";}
	echo "<td>$uno<br>$due</td>";
	$conta++;
	$tot++;
	if($conta>3 || $tot > $sono){$conta=1; echo "</tr>";}
	//se vuoi 4 a 4 $conta >4, ecc....
}
echo "</table>";
?>
</div>
 
Ciao,
ho provato cosi ma restituisce pagina bianca :(

cosa sbaglio ?

PHP:
	<?php

require ("db_connect.php"); 



$records = mysql_num_rows("SELECT * FROM
     ricette INNER JOIN tipologia ON (ricette.tipologiaid=tipologia.id )
     INNER JOIN cottura ON (ricette.cotturaid=cottura.id )
     INNER JOIN difficolta ON (ricette.difficoltaid=difficolta.id )
     INNER JOIN regione ON (ricette.regioneid=regione.id )
     INNER JOIN solo ON (ricette.soloid=solo.id )
     INNER JOIN speciali ON (ricette.specialiid=speciali.id )
     INNER JOIN stato ON (ricette.statoid=stato.id )
     INNER JOIN tempo ON (ricette.tempoid=tempo.id )
     INNER JOIN tipo ON (ricette.tipoid=tipo.id )
      INNER JOIN ingrediente ON (ricette.ingredienteid=ingrediente.id )
       INNER JOIN users ON (ricette.user_id=users.id)
       
WHERE
tipologia.tipologia='antipasti' ORDER BY `id_annunci` DESC LIMIT 1",$db); 


$tot=0; 
$conta=1; 
$sono=mysql_num_rows($records); 

echo "<table>";//con tutti i css del caso 
while($riga=mysql_fetch_array($result)){ 
    $uno=$riga['uno']; 
    $due=$riga['due']; 
    if($conta==1){ echo "<tr>";} 
    echo "<td>$uno<br>$due</td>"; 
    $conta++; 
    $tot++; 
    if($conta>3 || $tot > $sono){$conta=1; echo "</tr>";} 
    //se vuoi 4 a 4 $conta >4, ecc.... 
} 
echo "</table>"; 




?>
 
ecchilo :) ok pensavo che era già pronto scusa .. ok provo a mettere le variabili e nel caso ti faccio sapere

grazie
 

Discussioni simili