ciao a tutti, sto combattendo con qualche giorno col php/mysql (dopo un paio d'anni di astinenza
)
ho le seguenti tabelle:
codice:
Struttura della tabella `gare`
CREATE TABLE `gare` (
`race_id` tinyint(3) NOT NULL default '0',
`pos_gara` tinyint(2) NOT NULL default '0',
`nome_pilota` varchar(50) NOT NULL default '',
`auto` varchar(50) NOT NULL default '',
`giri_gara` tinyint(3) NOT NULL default '0',
`tempo_gara` varchar(20) NOT NULL default '',
`gap_gara` varchar(20) NOT NULL default '',
`fastest_laptime` varchar(20) NOT NULL default '',
`fastest_lapnr` tinyint(3) NOT NULL default '0',
`pos_quali` tinyint(2) NOT NULL default '0',
`tempo_quali` varchar(20) NOT NULL default '',
`gap_quali` varchar(20) NOT NULL default ''
) TYPE=MyISAM;
Struttura della tabella `drivers`
CREATE TABLE `drivers` (
`driver_id` int(3) unsigned NOT NULL auto_increment,
`nome` varchar(40) NOT NULL default '',
`numero` int(3) NOT NULL default '0',
`nick` varchar(40) NOT NULL default '',
`auto` varchar(150) NOT NULL default '',
`team` varchar(40) NOT NULL default '',
`logo` varchar(150) NOT NULL default '',
KEY `driver_id` (`driver_id`)
) TYPE=MyISAM AUTO_INCREMENT=8 ;
ora mi creo una pagina dalla tabella drivers con una semplice query che mi mostra tutti i piloti presenti nella tabella DRIVERS
Codice PHP:
if ($sortby == "")
$query = "SELECT * FROM drivers order by driver_id DESC";
else
$query = "SELECT * FROM drivers order by $sortby $order";
$result = mysql_query($query, $db);
while ($row = mysql_fetch_array($result)) {
$driver_id = $row["driver_id"];
$numero = $row["numero"];
$nome = $row["nome"];
$nick = $row["nick"];
e fin qui nessun problema
ora devo recuperare dalla tabella GARE alcuni dati per ogni singolo pilota facendo delle COUNT; ad esempio voglio trovare quante gare ha fatto ogni singolo pilota
ecco il seguito della pagina che ho fatto:
Codice PHP:
$query = "SELECT g.*, d.*, count(*) AS tot_gare FROM gare g INNER JOIN drivers d ON g.nome_pilota=d.nome GROUP BY nome_pilota";
$result = mysql_query($query, $db);
$row = mysql_fetch_array($result);
{
$tot_gare = $row["tot_gare"];
}
echo "<tr bgcolor=\"$colore_riga\"><td class='riga'><a href=\"view_driver.php?driver_id=$driver_id\"> $nome</a></td><td class='riga'>$nick</td><td class='riga'>$numero</td><td class='riga'>$tot_gare</td><td class='riga'>$vittorie</td><td class='riga'>$poles</td></tr>";
}
mysql_close($db);
?>
purtroppo però mi fa apparire solo 1 pilota mentre a me serve la lista di tutti i piloti presenti in drivers e la somma delle presenze per ciascuno di loro...
spero nel vostro aiuto
grazie
Roberto