listing dati da database a tabella html con php

macchiavelli.ivan

Utente Attivo
7 Dic 2012
67
0
0
Salve a tutti.
Dovrei listare e mettere in classifica i docenti a seconda del numero di lezioni settimanali fatte.
1) Uomini Settimana
2) Donne Settimana
3)Uomini Totale (Dall'inizio dell'anno)
4)Donne Totale (Dall'inizio dell'anno)
Come posso metterli in ordine crescente dall'insegnante con + lezioni a quello con - Lezioni?

HTML:
$anno=$_POST['year']; 
$sett=$_POST['week'];

Sono presi da un form.

Vi posto il Dump delle tabelle.

HTML:
-- Struttura della tabella `lezioni`
--

CREATE TABLE IF NOT EXISTS `lezioni` (
  `id` int(10) NOT NULL AUTO_INCREMENT,
  `week` int(2) NOT NULL,
  `anno` varchar(4) COLLATE utf8mb4_unicode_ci NOT NULL,
  `lez` int(3) NOT NULL,
  `id_ins` int(10) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci AUTO_INCREMENT=19 ;

--
-- Dump dei dati per la tabella `lezioni`
--

HTML:
-- --------------------------------------------------------

--
-- Struttura della tabella `maestri`
--

CREATE TABLE IF NOT EXISTS `maestri` (
  `id` int(10) NOT NULL AUTO_INCREMENT,
  `citta` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL,
  `nome` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `cognome` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `sesso` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'uomo',
  PRIMARY KEY (`id`),
  UNIQUE KEY `id` (`id`),
  KEY `id_scuola` (`citta`),
  KEY `sesso` (`sesso`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci AUTO_INCREMENT=100 ;

--
-- Dump dei dati per la tabella `maestri`

E qua le tabelle html per avere una visuale più chiara:

Primo
Schermata 12-2456274 alle 20.58.38.png

Secondo
Schermata 12-2456274 alle 20.59.21.jpg

Dove si legge "io" andranno i dati
Grazie in anticipo per l'aiuto.
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Ciao,
puoi provare con una query del genere
Codice:
SELECT M.cognome,M.nome,count(L.id) as nmLezioni,anno
FROM lezioni L 
JOIN maestri M ON M.id = L.id_ins
WHERE anno = 2012 && M.sesso = 'uomo'
GROUP BY L.id_ins ORDER BY nmLezioni DESC
 

macchiavelli.ivan

Utente Attivo
7 Dic 2012
67
0
0
Ciao.
Intendi una cosa del genere?

PHP:
<?php
                                include "config.php";
                                    connettiDb();
                $sql="SELECT M.cognome,M.nome,count(L.id) as nmLezioni,anno FROM lezioni L JOIN maestri M ON M.id = L.id_ins WHERE anno = 2012 && M.sesso = 'uomo' GROUP BY L.id_ins ORDER BY nmLezioni DESC";
                 $dati=mysql_query($sql);
                 
?>

e poi:

PHP:
<?php
while($riga=mysql_fetch_array($dati)) { 
                  echo "...";
                   }
?>
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
del genere perche è da testare e perfezionare
io di solito provo le query direttamente nel SQL di phpmyadmin, quando ho il risultato che voglio le faccio eseguire da php e nel while mi costruisco la tabella
In php al posto dell'anno ci andra una variabile con la scelta del menu a tendina e non ho inserito ancora la settimana
ripeto è da provare
 

macchiavelli.ivan

Utente Attivo
7 Dic 2012
67
0
0
Rieccomi.

Ho meditato allungo ed elaborato questo codice:
PHP:
<?php
        
        include "config.php";
        connettiDb();
        
        $anno=$_POST['year']; 
   		$sett=$_POST['week']; 
   		
        $sql="select * from maestri where sesso='uomo'";
                 $dati=mysql_query($sql);
                 $rows=mysql_fetch_array($dati);
        
                foreach ($rows as $row) { 
  $query = "SELECT SUM(lezioni.lez) AS totLez tot FROM lezioni WHERE id_ins = " . $row['id'] . " AND sesso = 1"; 
 
        echo '  <td style="vertical-align: top;">' . trim($row['nome'] . ' ' . $row['cognome']) . '<br />
                  </td>
                  <td style="vertical-align: top;">' . trim($row['scuola'] ) . '<br />
                  </td>
                  <td style="vertical-align: top;">DA INSERIRE<br />';
                  }
?>

che rilascia questo errore:

HTML:
Parse error: syntax error, unexpected $end in...

Confesso che sono un po in alto mare.
Come posso rendere funzionale il tutto? Avete qualche consiglio da darmi?
 
Discussioni simili
Autore Titolo Forum Risposte Data
B Query and List, PhP Main Page Auto Listing of User Actio PHP 0
max75 query su due tabelle e dati doppioni MS Access 2
K Form che manda dati doppi PHP 1
T problemi con dati menu a tendina HTML e CSS 2
D protezione cartelle: blocco visualizzazione/scaricamento contenuto, ma abilitazione utilizzo dati da parte di file .php presenti sul sito Web Server 1
D Risultati diversi elaborazione dati fra localhost e Altervista PHP 0
C Creare Tabella Dati Meteo prelevandoli da dei Tags in un altro foglio PHP 27
M Invio dati database via email php PHP 0
K [php]form invio dati PHP 0
peppe0703 Come Estrarre dati da db wordpress e richiamarli in html esterno HTML e CSS 0
V dati scomparsi dal sito HTML e CSS 3
M Memorizzare i dati nei campi prima dell'invio al db PHP 4
A Stampare dati da form PHP 8
E Estrarre dati da doppia tabella, banale ma non sempre PHP 1
Couting95 inserire dati da un file di testo in una tabella in php PHP 1
F Scrivere dei dati in word con php PHP 0
otto9due $_FILE non passa i dati dal form PHP 1
N dati tabella non presi PHP 1
M Riportare in tabella HTML dati estratti con query SQL MySQL 0
I Assegnare dati fetch request ad una variabile globale Javascript 0
L PHPSpreadsheet inserire dati da file .xlsx/.xls su database PHP 2
L Ricezione dei dati su file php da modulo html PHP 6
L inserimento form dati multipli ? PHP 0
S Leggere dati da API e visualizzarli PHP 0
S problema con recupero dati tabella mysql PHP 2
E Progressbar estrazione dati da tabella mySQL Ajax 9
A invio massivo dati a file php Javascript 4
M Inviare dati nel db dopo risposta alert PHP 0
A recuperare i dati passati nel post PHP 1
L Estrazione dati php Database 6
L Estrazione dati casuali non doppioni MySQL 1
F Leggere e aggiornare dati di campi <input text> su file di test PHP 0
J Form inserimento dati in database Ajax 1
D Recupero dati da HDD esterno Hardware 0
L non duplicare dati in stato "aggiornamento" PHP 6
L inserire dati multi livello PHP 8
L input (rilevare cambio dati) PHP 3
L input dati con inser into select ? PHP 4
W Invio Dati ad un altra pagina Classic ASP 1
A Mostrare dati database per pagine PHP 2
Samuele Ronzani Sposta dati in una tabella eliminandolo MySQL 6
S Gestire scelta dropdown con dati da Mysql PHP 2
C Estrarre dati stringa Sql Database 1
elpirata Query per leggere dati da una tabella mysql e mostrarli a video in base a parametri passati tramite GET PHP 5
W Evitare ridondanza dei dati Classic ASP 3
MarcoGrazia Dati nulli su join tra più tabelle MySQL 1
A Inserimento dati nel database tramite form + altre operazioni PHP 18
Alex_70 sql importazione dati MySQL 0
C Aggiungere blocco dati Javascript 6
G inserire dati automaticamente in mysql PHP 0

Discussioni simili