Problemone con allineamento in tabella

marcopa

Nuovo Utente
13 Set 2011
11
0
0
sassari
Ciao a tutti, sono da giorni alle prese con un problema che non riesco a risolvere, provo a spiegare nella speranza che a qualcuno abbia un aiuto da darmi...

Devo allineare in una tabella composta in questo modo :
HTML:
<table class="table1">
                <thead>
                    <tr>
                        <th></th>
                        <th scope="col" abbr="Musica">Musica</th>
                        <th scope="col" abbr="Letteratura">Letteratura</th>
                        <th scope="col" abbr="Arte">Arte</th>
                        <th scope="col" abbr="Cucina">Cucina</th>
                    </tr>
                </thead>
                
                <tbody>
                    <tr>
                        <th scope="row">Italiano</th>
                     </tr>
                    <tr>
                        <th scope="row">Inglese</th>
                     </tr>
                    <tr>
                        <th scope="row">Francese</th>
                    </tr>
                     <tr>
                </tbody>
            </table>
I dati li ho scritti per far capire cosa avranno le tabelle ma non posso sapere l'ordine
vengono letti da database e creano le colonne.
Devo riuscire ad "infilare" i dati letti da mysql nella corrispondente cella
Se il libro tratta arte ed è Italiano... come diavolo posso sapere dove lo devo mettere?

Avete qualche dritta da darmi?
Grazie!
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Ciao
La tabella come è fatta piu o meno?
hai un campo che identifica la lingua?
 

marcopa

Nuovo Utente
13 Set 2011
11
0
0
sassari
Ciao
La tabella come è fatta piu o meno?
hai un campo che identifica la lingua?

spero di aver capito cosa intendi.
I campi da mysql sono due : categ che identifica Arte,Cucina,Letteratura etc.
ed il campo lingua dove trovi Italiano,inglese,francese
intendi questi?
 

marcopa

Nuovo Utente
13 Set 2011
11
0
0
sassari
Scusami, in visual basic, esisteva un comando che ti permetteva esattamente di posizionare un dato in una data cella
Colpos(), Rowpos(), una corrispondenza esiste?
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
ed il campo lingua dove trovi Italiano,inglese,francese
si questi

ma che linguaggio stai usando adesso?

ps: se PHP piu tardi provo a buttarti giu qualcsoa
 
Ultima modifica:

marcopa

Nuovo Utente
13 Set 2011
11
0
0
sassari
si questi

ma che linguaggio stai usando adesso?

ps: se PHP piu tardi provo a buttarti giu qualcsoa

Scusa, sto usando PHP.
te ne sarei molto grato, riesco ad ottenere delle tabelle ma disordinate, sotto la colonna arte mi ritrovo totalizzato
anche musica o altro, proprio non riesco a mettere in ordine il codice.
 

marcopa

Nuovo Utente
13 Set 2011
11
0
0
sassari
Aspetta, se vuoi aiutarmi evita di riscrivere tutto, io ho già scritto questo.
HTML:
<div id="content">        
             
<h2><center> Totali libri per categoria </center></h2>
            
            <table width="1022" class="table1">
                 <thead>
                    <tr>
                        <th></th>
                        <?php creacolonne();?>
                    </tr>
                </thead>                  
            
                <!---------------------------------------- Cerco Regioni --------------------------------->
                <tbody>
                    <tr>
                       <?php Lingue();?>
                  <tr>
                </tbody>
            </table> 
        </div> 		
</div> 
</body>
</html>
PHP:
<?PHP
function creacolonne()
{
	include "funzioni_mysql.php";

$datagestori = new MysqlClass();
$datagestori->connetti();

$categorie='';
 
$select="SELECT DISTINCT(tipo_categ) as categoria FROM libri order by lingua,tipo_categ"; 
 
$query = $datagestori->query($select);


	 while ($row = mysql_fetch_array($query))
	 {
 			$cat =$row['tipo_categ'];
			
             echo '<th scope="col" ><div id="' .$cat. '">' .$cat .'</div></th>';

	 }
 

$datagestori ->disconnetti();

return;


}
//--------------------------------------------------------------------------------------------------
function lingue()
{
$datagestori = new MysqlClass();
$datagestori->connetti();
$lingua ='';
 
$commento_sql = $datagestori->query("SELECT * FROM libri order by lingua asc ");

if(mysql_num_rows($commento_sql) > 0) 
  {  
  		while($commento_obj = $datagestori->estrai($commento_sql)) { 

 			      $lingua =  $commento_obj->lingua;
 			
 				  echo '<th scope="row" id="'.$lingua.'" >'.$lingua.'</th>';
				  
				  categoria($lingua);
                  
 
		}
  }

 
$datagestori ->Disconnetti();

return;
}

// --------------------------------------------------------------------------------------------------------------------

function categoria($lingua)
{

$datagestori = new MysqlClass();
$datagestori->connetti();
 
$select="SELECT tipo_categ, COUNT(*) as totali  FROM libri where lingua =$lingua GROUP BY tipo_categ"; 

$query = $datagestori->query($select);


	 while ($row = mysql_fetch_array($query))
	 {
 		 
 		 echo '<td><div id="' .$row['tipo_categ'].'">'.$row['totali']. '</div></td>' ;

	 }
 

echo ' </tr>';
echo ' <tr>';

$datagestori ->disconnetti();

return;
}

?>
 
Ultima modifica di un moderatore:

marcopa

Nuovo Utente
13 Set 2011
11
0
0
sassari
Rieccomi, sto cercando di darti più informazioni possibili, libri.jpg
ho allegato un print_screen della tabella per far capire dove sta l'errore
come puoi vedere nella tabella è indicato 1 Libro di bricolage in Inglese ma nel database non esiste.
In Inglese ho solo libri di Arte e Letteratura, in arte ho 1 libro ma in letteratura non ho nulla.
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
se ho capito...
hai una tabella piu o meno cosi

letteratura - inglese
cucina - italiano
cucina - inglese
musica - inglese
letteratura - italiano
letteratura - italiano
cucina - italiano
i valori possono ripetersi
e dovresti fare un count() ragruppando per tipo e lingua

credo che te la puoi cavare con una sola funzione e una sola query
pensavo di creare un array su misura e di ciclarlo per creare la tabella

ma probabilmente sono troppo fuso per ragionare decentemente
ti posto l'inizio della mia idea magari puo darti qualche spunto
ho usato la libreria mysql per connettermi
PHP:
<?php
$conn = mysql_connect("localhost", "root", "");
$db = mysql_select_db("database");
// in questo array metterai le categorie che hai sul db
$array_categorie = array("musica", "cucina", "letteratura");
// costruiamo la query
$query = "SELECT count(*) as conta,tipo_categ,lingua FROM libri GROUP BY tipo_categ, lingua";
// eseguiamola
$res = mysql_query($query);
// costruiamo l'array 
$array = array();
while ($rows = mysql_fetch_assoc($res)) {
    if (in_array($rows['tipo_categ'], $array_categorie)) {
        $array[$rows['tipo_categ']][$rows['lingua']] = $rows['conta'];
    }
}
// vediamo cosa ne è uscito
var_dump($array);
sicuramente domani mattina a mente fresca ragiono meglio
 

marcopa

Nuovo Utente
13 Set 2011
11
0
0
sassari
Ciao, scusa ma ieri notte sono rientrato troppo tardi, pizzata con ex compagni di scuola!!!
Ora provo, ma ho visto che hai messo in array le categorie....mmm, credo si possa fare
anche se non conosco tutte quelle inserite, diciamo che le potrei codificare e unificarle.
Ho visto nel db originale che alcuni testi sono Lettere, Letteratura, Lettera
ma questo è un problema risolvibile...
Ora provo la tua soluzione. Poi ti dico
Grazie.
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
anche se non conosco tutte quelle inserite

al massimo puoi fare una query sul db per costruirti dinamicamente l'array delle categorie
 

marcopa

Nuovo Utente
13 Set 2011
11
0
0
sassari
$query = "SELECT count(*) as conta,tipo_categ,lingua FROM libri GROUP BY lingua, tipo_categ ";

In realta, andrebbe selezionata al contrario, l'esempio che mi hai postato mi seleziona :

Arte : 1 italiano, 1 Inglese.
Sarebbe il contrario
Italiano 1 arte 1 Cucina 1 Bricolage
Inglese 1 arte 0 cucina 0 Bricolage
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
prova ad invertire il group by e l'ordine dei campi

Codice:
SELECT lingua,count(*) as conta,tipo_categ FROM libri GROUP BY tipo_categ, lingua

EDIT e anche il cliclo mi sa
 

marcopa

Nuovo Utente
13 Set 2011
11
0
0
sassari
Grazie Ragazzi, ho risolto in questo modo, anche se non molto pulito, ma funge.
Considerando che le categorie sono in tutto 9, può andare bene....
Peccato, con vb lo avevo fatto in 10 minuti, ma per il web è macchinoso!!

PHP:
$select="SELECT tipo_campo, COUNT(*) as totali  FROM campi where id_reg =$id_reg GROUP BY tipo_campo"; 
$query = $datagestori->query($select);


	 while ($row = mysql_fetch_array($query))
	 {
 		 $cat =$row['tipo_campo'];

             if ($cat=='Arte')
               {

                 echo '<td>>'.$row['totali']. '</td>' ;
 		 echo '<td></td>' ;
 		 echo '<td></td>' ;
 		 echo '<td></td>' ;
              }
             if ($cat=='Bricolage')
               {
 		 echo '<td></td>' ;
                 echo '<td>>'.$row['totali']. '</td>' ;
 		 echo '<td></td>' ;
 		 echo '<td></td>' ;
              }
             if ($cat=='Cucina')
               {

 		 echo '<td></td>' ;
 		 echo '<td></td>' ;
                 echo '<td>>'.$row['totali']. '</td>' ;
 		 echo '<td></td>' ;
              }

	 }
 
Discussioni simili
Autore Titolo Forum Risposte Data
C Problemone con Tag <object> in <table> HTML e CSS 0
figo1592 Problemone con Mp3 HTML e CSS 1
S Stamp-Catturare immagini con Flash...Problemone!! Flash 3
J Aiuto problemone firefox. HTML e CSS 4
M ho un problemone col proxy!! HELP!! ç_ç Reti LAN e Wireless 0
M Problemone foreach PHP 0
S [vb.net 2005] Creare un modulo PROBLEMONE Programmazione 0
S Problemone Enorme Help!!! Classic ASP 6
G formattazione : problemone Hardware 5
F access ricerca record con apostrofo. MS Access 0
F Cerco Hosting con VECCHIE versioni di php Hosting 0
C Come ricreare questo calcolatore di prezzi a step con woocommerce? WordPress 0
C Segnalo barra laterale di navigazione ASSENTE con Chrome Comunicazioni dallo Staff 5
G Guadagna dalla Vendita di Articoli Sponsorizzati con GuestPostMax.com! Guadagnare col Sito 0
P Hosting multidominio con Plesk Hosting 0
L Soluzione con INNER JOIN Database 0
S passare un valore da un form a un file .php con metodo post PHP 4
A Redirect 301 genera url statico con variabili Web Server 0
T problemi con dati menu a tendina HTML e CSS 2
T Query con date MS Access 1
F Url dinamiche da cambiare con categoria, subcategoria e title PHP 2
L Aiuto con DataGridView Visual Basic 1
O problema con dvr dahua xvr5116 IP Cam e Videosorveglianza 0
G Problema con Xampp Web Server 1
M Aggiunta prodotti nel carrello con lo stesso in e varianti diverse PHP 0
andrea barletta Problema con miniature comandi Photoshop 0
I problema con alice Posta Elettronica 0
B Non riesco a trovare i cognomi con i caratteri speciali in Access (Microsoft 365) MS Access 0
N Problema con position absolute e overflow HTML e CSS 4
M Estrarre soltanto i prodotti con stessa descrizione PHP 10
felino [Wordpress] Gallery con foto selezionabili dall'utente WordPress 0
G Invio di più valori con la stessa checkbox PHP 4
csi Inviare file jpg in locale alla stampante con php PHP 0
otto9due Proteggere una cartella e file con password tramite .htaccess e .htpasswd Web Server 0
I Form con selettore HTML e CSS 0
G phpmailer e php 8.1 con estensione mysqli PHP 6
L Problema con inner join PHP 11
K [php] Problema con inner join PHP 4
N Vendo sito web di casino online con 1000 giochi Compravendita siti e domini 0
G form invio multiplo con checkbox PHP 12
L Query e selezione DB con $_POST PHP 2
K [PHP] Problema con variabili concatenate. PHP 1
R Dubbi su siti sviluppati con Wordpress e con codice WordPress 6
B Router e telecamere con pannello solare IP Cam e Videosorveglianza 0
Z Cerco ecommerce gratuito meglio se realizzato con Woocommerce di Wordpress. E-Commerce 0
S [CERCO] scambio di articoli con link Offerte e Richieste di scambio links 0
A Immagine decentrata con sfondo trasparente Photoshop 0
O problema con query PHP 4
Jensen Errore di sintassi con DELETE PHP 3
D Casella di testo con grassetto ecc... HTML e CSS 2

Discussioni simili