<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>Partita Completa</title> <link href="Basket.css" rel="stylesheet" type="text/css" /> </head> <body> <?php /* Si effettua la connessione al DataBase controllando che non vi siano errori */ $connessione=mysqli_connect("localhost","root","root","Basket"); if (mysqli_connect_errno()) { echo "Connessione a MySQL fallita: " . mysqli_connect_error(); } /* Si recupera il numero partita inserito dall'utente quale scelta da visionare; se risulta vuoto si visualizza la prima partita. */ if (empty($_POST["Numero_Partita"])) $Num_Partita=1; else $Num_Partita=$_POST["Numero_Partita"]; /* Si definisce l'istruzione per la selezione dei dati provenienti dalla Tabella Campionato. */ $query="SELECT * FROM Campionato WHERE Codice_Partita=$Num_Partita"; /* Se la connessione è stata eseguita correttamente... */ if ($result=mysqli_query($connessione,$query)) { /* Attraverso l'uso del comando mysqli_fetch_array( ) si recuperano i dati provenienti dalla Tabella Campionato che vengono inseriti in un array e successivamente visualizzati sullo schermo. */ while($riga=mysqli_fetch_array($result)) { $v0=$riga["Codice_Partita"]; $v1=$riga["Data_Partita"]; $v2=$riga["Squadra_Casa"]; $v3=$riga["Squadra_Ospite"]; $v4=$riga["Tipologia"]; $v5=$riga["Categoria"]; $v6=$riga["Risultato_Finale"]; $v7=$riga["Parziale_1T"]; $v8=$riga["Parziale_2T"]; $v9=$riga["Parziale_3T"]; $v10=$riga["Parziale_4T"]; $v11=$riga["Parziale_5T"]; $v12=$riga["Parziale_6T"]; $v13=$riga["Parziale_7T"]; $v14=$riga["Parziale_8T"]; } mysqli_free_result($result); } /*Si disegna sullo schermo la Tabella che ospiterà tutti i dati necessari. Si usano i TAG HTML incorporati nelle istruzioni di PHP con l'uso del comando echo. */ echo "<table>"; echo "<caption>" . "[" . $v0 . "] " . $v2 . " - " . $v3 . "</caption>"; echo "<tr>"; if($v4=="Amichevole") echo "<th colspan=\"4\" class=\"Amichevole td_bordo_dx\">Amichevole " . $v5 . "<br/>" . $v1 . "</td>"; elseif($v4=="Campionato") echo "<th colspan=\"4\" class=\"Campionato td_bordo_dx\">Campionato " . $v5 . "<br/>" . $v1 . "</td>"; else echo "<th colspan=\"4\" class=\"Torneo td_bordo_dx\">Torneo " . $v5 . "<br/>" . $v1 . "</td>"; echo "<th class=\"td_bordo_dx\" colspan=\"2\">Tempo 1</th>"; echo "<th class=\"td_bordo_dx\" colspan=\"2\">Tempo 2</th>"; echo "<th class=\"td_bordo_dx\" colspan=\"2\">Tempo 3</th>"; echo "<th class=\"td_bordo_dx\" colspan=\"2\">Tempo 4</th>"; echo "<th class=\"td_bordo_dx\" colspan=\"2\">Tempo 5</th>"; echo "<th class=\"td_bordo_dx\" colspan=\"2\">Tempo 6</th>"; echo "<th class=\"td_bordo_dx\" colspan=\"2\">Tempo 7</th>"; echo "<th colspan=\"2\">Tempo 8</th>"; echo "</tr>"; echo "<tr> <th class=\"Intestazione_2 td_bordo_dx\">N°</th> <th class=\"Intestazione_2 td_bordo_dx\">Cognome</th> <th class=\"Intestazione_2 td_bordo_dx\">Nome</th> <th class=\"Intestazione_2 td_bordo_dx\">Anno</th> <th class=\"Intestazione_2Punti\">2 Punti</th> <th class=\"Intestazione_1Punto td_bordo_dx\">1 Punto</th> <th class=\"Intestazione_2Punti\">2 Punti</th> <th class=\"Intestazione_1Punto td_bordo_dx\">1 Punto</th> <th class=\"Intestazione_2Punti\">2 Punti</th> <th class=\"Intestazione_1Punto td_bordo_dx\">1 Punto</th> <th class=\"Intestazione_2Punti\">2 Punti</th> <th class=\"Intestazione_1Punto td_bordo_dx\">1 Punto</th> <th class=\"Intestazione_2Punti\">2 Punti</th> <th class=\"Intestazione_1Punto td_bordo_dx\">1 Punto</th> <th class=\"Intestazione_2Punti\">2 Punti</th> <th class=\"Intestazione_1Punto td_bordo_dx\">1 Punto</th> <th class=\"Intestazione_2Punti\">2 Punti</th> <th class=\"Intestazione_1Punto td_bordo_dx\">1 Punto</th> <th class=\"Intestazione_2Punti\">2 Punti</th> <th class=\"Intestazione_1Punto\">1 Punto</th> </tr>"; /* Si definisce l'istruzione per la selezione dei dati provenienti dalle Tabelle Partita e Giocatori. */ $query2="SELECT Giocatori.*, Partita.* FROM Giocatori INNER JOIN Partita ON Giocatori.Numero_Maglia = Partita.Numero_Maglia WHERE Partita.Codice_Partita=$Num_Partita"; /* Ci si connette al DataBase, e attraverso un ciclo si recuperano tutti dati memorizzati in ogni singola riga e le rappresentiamo sullo schermo disponendole correttamente nella tabella. */ if ($result2=mysqli_query($connessione,$query2)) { while($riga2=mysqli_fetch_array($result2)) { echo "<tr>"; echo "<td class=\"Colonna_Numero td_bordo_dx\">" . $riga2["Numero_Maglia"] . "</td>"; echo "<td class=\"td_bordo_dx\">" . $riga2["Cognome"] . "</td>"; echo "<td class=\"td_bordo_dx\">" . $riga2["Nome"] . "</td>"; echo "<td class=\"Colonna_Anno td_bordo_dx\">" . $riga2["Anno"] . "</td>"; if($riga2["Canestri_2p_1T"] >0) echo "<td class=\"Colonna_2Punti\">" . $riga2["Canestri_2p_1T"] . "</td>"; else echo "<td></td>"; if($riga2["Canestri_1p_1T"] >0) echo "<td class=\"Colonna_1Punto td_bordo_dx\">" . $riga2["Canestri_1p_1T"] . "</td>"; else echo "<td class=\"td_bordo_dx\"></td>"; if($riga2["Canestri_2p_2T"] >0) echo "<td class=\"Colonna_2Punti\">" . $riga2["Canestri_2p_2T"] . "</td>"; else echo "<td></td>"; if($riga2["Canestri_1p_2T"] >0) echo "<td class=\"Colonna_1Punto td_bordo_dx\">" . $riga2["Canestri_1p_2T"] . "</td>"; else echo "<td class=\"td_bordo_dx\"></td>"; if($riga2["Canestri_2p_3T"] >0) echo "<td class=\"Colonna_2Punti\">" . $riga2["Canestri_2p_3T"] . "</td>"; else echo "<td></td>"; if($riga2["Canestri_1p_3T"] >0) echo "<td class=\"Colonna_1Punto td_bordo_dx\">" . $riga2["Canestri_1p_3T"] . "</td>"; else echo "<td class=\"td_bordo_dx\"></td>"; if($riga2["Canestri_2p_4T"] >0) echo "<td class=\"Colonna_2Punti\">" . $riga2["Canestri_2p_4T"] . "</td>"; else echo "<td></td>"; if($riga2["Canestri_1p_4T"] >0) echo "<td class=\"Colonna_1Punto td_bordo_dx\">" . $riga2["Canestri_1p_4T"] . "</td>"; else echo "<td class=\"td_bordo_dx\"></td>"; if($riga2["Canestri_2p_5T"] >0) echo "<td class=\"Colonna_2Punti\">" . $riga2["Canestri_2p_5T"] . "</td>"; else echo "<td></td>"; if($riga2["Canestri_1p_5T"] >0) echo "<td class=\"Colonna_1Punto td_bordo_dx\">" . $riga2["Canestri_1p_5T"] . "</td>"; else echo "<td class=\"td_bordo_dx\"></td>"; if($riga2["Canestri_2p_6T"] >0) echo "<td class=\"Colonna_2Punti\">" . $riga2["Canestri_2p_6T"] . "</td>"; else echo "<td></td>"; if($riga2["Canestri_1p_6T"] >0) echo "<td class=\"Colonna_1Punto td_bordo_dx\">" . $riga2["Canestri_1p_6T"] . "</td>"; else echo "<td class=\"td_bordo_dx\"></td>"; if($riga2["Canestri_2p_7T"] >0) echo "<td class=\"Colonna_2Punti\">" . $riga2["Canestri_2p_7T"] . "</td>"; else echo "<td></td>"; if($riga2["Canestri_1p_7T"] >0) echo "<td class=\"Colonna_1Punto td_bordo_dx\">" . $riga2["Canestri_1p_7T"] . "</td>"; else echo "<td class=\"td_bordo_dx\"></td>"; if($riga2["Canestri_2p_8T"] >0) echo "<td class=\"Colonna_2Punti\">" . $riga2["Canestri_2p_8T"] . "</td>"; else echo "<td></td>"; if($riga2["Canestri_1p_8T"] >0) echo "<td class=\"Colonna_1Punto\">" . $riga2["Canestri_1p_8T"] . "</td>"; else echo "<td></td>"; echo "</tr>"; } echo "<tr>"; echo "<td class=\"td_bordo_dx\" colspan=\"2\"><b>Risultato</b></td>"; $valori=explode("-",$v6); if(($valori[0]>$valori[1] && $v2=="Cascina")||($valori[0]<$valori[1] && $v3=="Cascina")) echo "<td colspan=\"2\" class=\"Finale_Vittoria td_bordo_dx\">" . $v6 . "</td>"; elseif(($valori[0]<$valori[1] && $v2=="Cascina")||($valori[0]>$valori[1] && $v3=="Cascina")) echo "<td colspan=\"2\" class=\"Finale_Sconfitta td_bordo_dx\">" . $v6 . "</td>"; else echo "<td colspan=\"2\" class=\"Finale_Pareggio td_bordo_dx\">" . $v6 . "</td>"; $valori=explode("-",$v7); if(($valori[0]>$valori[1] && $v2=="Cascina")||($valori[0]<$valori[1] && $v3=="Cascina")) echo "<td colspan=\"2\" class=\"Parziale_Vittoria td_bordo_dx\">" . $v7 . "</td>"; elseif(($valori[0]<$valori[1] && $v2=="Cascina")||($valori[0]>$valori[1] && $v3=="Cascina")) echo "<td colspan=\"2\" class=\"Parziale_Sconfitta td_bordo_dx\">" . $v7 . "</td>"; else echo "<td colspan=\"2\" class=\"Parziale_Pareggio td_bordo_dx\">" . $v7 . "</td>"; $valori=explode("-",$v8); if(($valori[0]>$valori[1] && $v2=="Cascina")||($valori[0]<$valori[1] && $v3=="Cascina")) echo "<td colspan=\"2\" class=\"Parziale_Vittoria td_bordo_dx\">" . $v8 . "</td>"; elseif(($valori[0]<$valori[1] && $v2=="Cascina")||($valori[0]>$valori[1] && $v3=="Cascina")) echo "<td colspan=\"2\" class=\"Parziale_Sconfitta td_bordo_dx\">" . $v8 . "</td>"; else echo "<td colspan=\"2\" class=\"Parziale_Pareggio td_bordo_dx\">" . $v8 . "</td>"; $valori=explode("-",$v9); if(($valori[0]>$valori[1] && $v2=="Cascina")||($valori[0]<$valori[1] && $v3=="Cascina")) echo "<td colspan=\"2\" class=\"Parziale_Vittoria td_bordo_dx\">" . $v9 . "</td>"; elseif(($valori[0]<$valori[1] && $v2=="Cascina")||($valori[0]>$valori[1] && $v3=="Cascina")) echo "<td colspan=\"2\" class=\"Parziale_Sconfitta td_bordo_dx\">" . $v9 . "</td>"; else echo "<td colspan=\"2\" class=\"Parziale_Pareggio td_bordo_dx\">" . $v9 . "</td>"; $valori=explode("-",$v10); if(($valori[0]>$valori[1] && $v2=="Cascina")||($valori[0]<$valori[1] && $v3=="Cascina")) echo "<td colspan=\"2\" class=\"Parziale_Vittoria td_bordo_dx\">" . $v10 . "</td>"; elseif(($valori[0]<$valori[1] && $v2=="Cascina")||($valori[0]>$valori[1] && $v3=="Cascina")) echo "<td colspan=\"2\" class=\"Parziale_Sconfitta td_bordo_dx\">" . $v10 . "</td>"; else echo "<td colspan=\"2\" class=\"Parziale_Pareggio td_bordo_dx\">" . $v10 . "</td>"; $valori=explode("-",$v11); if(($valori[0]>$valori[1] && $v2=="Cascina")||($valori[0]<$valori[1] && $v3=="Cascina")) echo "<td colspan=\"2\" class=\"Parziale_Vittoria td_bordo_dx\">" . $v11 . "</td>"; elseif(($valori[0]<$valori[1] && $v2=="Cascina")||($valori[0]>$valori[1] && $v3=="Cascina")) echo "<td colspan=\"2\" class=\"Parziale_Sconfitta td_bordo_dx\">" . $v11 . "</td>"; elseif($valori[0]=$valori[1]) echo "<td colspan=\"2\" class=\"Parziale_Pareggio td_bordo_dx\">" . $v11 . "</td>"; else echo "<td colspan=\"2\"></td>"; $valori=explode("-",$v12); if(($valori[0]>$valori[1] && $v2=="Cascina")||($valori[0]<$valori[1] && $v3=="Cascina")) echo "<td colspan=\"2\" class=\"Parziale_Vittoria td_bordo_dx\">" . $v12 . "</td>"; elseif(($valori[0]<$valori[1] && $v2=="Cascina")||($valori[0]>$valori[1] && $v3=="Cascina")) echo "<td colspan=\"2\" class=\"Parziale_Sconfitta td_bordo_dx\">" . $v12 . "</td>"; elseif($valori[0]=$valori[1]) echo "<td colspan=\"2\" class=\"Parziale_Pareggio td_bordo_dx\">" . $v12 . "</td>"; else echo "<td class=\"td_bordo_dx\" colspan=\"2\"></td>"; $valori=explode("-",$v13); if(($valori[0]>$valori[1] && $v2=="Cascina")||($valori[0]<$valori[1] && $v3=="Cascina")) echo "<td colspan=\"2\" class=\"Parziale_Vittoria td_bordo_dx\">" . $v13 . "</td>"; elseif(($valori[0]<$valori[1] && $v2=="Cascina")||($valori[0]>$valori[1] && $v3=="Cascina")) echo "<td colspan=\"2\" class=\"Parziale_Sconfitta td_bordo_dx\">" . $v13 . "</td>"; elseif($valori[0]=$valori[1]) echo "<td colspan=\"2\" class=\"Parziale_Pareggio td_bordo_dx\">" . $v13 . "</td>"; else echo "<td class=\"td_bordo_dx\" colspan=\"2\"></td>"; $valori=explode("-",$v14); if(($valori[0]>$valori[1] && $v2=="Cascina")||($valori[0]<$valori[1] && $v3=="Cascina")) echo "<td colspan=\"2\" class=\"Parziale_Vittoria\">" . $v14 . "</td>"; elseif(($valori[0]<$valori[1] && $v2=="Cascina")||($valori[0]>$valori[1] && $v3=="Cascina")) echo "<td colspan=\"2\" class=\"Parziale_Sconfitta\">" . $v14 . "</td>"; elseif($valori[0]=$valori[1]) echo "<td colspan=\"2\" class=\"Parziale_Pareggio\">" . $v14 . "</td>"; else echo "<td colspan=\"2\"></td>"; echo "</tr>"; } echo "</table>"; mysqli_free_result($result2); mysqli_close($connessione); ?> <form method="post"> <table style="borde"> <tr> <td id="pulsante_partita_completa">Inserisci il N° Partita da visualizzare. <input type="text" size=4 name="Numero_Partita"> <input type="submit"></td> </tr> </table> </form> </body> </html>
Il Report raccoglie i dati provenienti da tutte a tre le tabelle e li dispone sullo schermo in modo razionale per una corretta e facile interpretazione.
Viene effettuata una connessione al DataBase, si recupera il numero della partita da visualizzare nel caso in cui l'utente ne abbia inserita una, altrimenti si visualizza la prima e con l'uso dell'istruzione mysqli_fetch_array( ) si crea un array che contiene TUTTI i dati della Tabella interessata.
Manuale Online: mysqli_fetch_array( )
Con i comandi HTML si crea una Tabella per ospitare i dati appena recuperati e li disponiamo sullo schermo.
A questo punto entra in gioco la nuova Select per il recupero delle informazioni relative ai ragazzi che hanno giocato e ai canestri che sono stati realizzati. Con la stessa procedura si ricava un array che contiene tutti i dati, e come prima ci creiamo una Tabella per la corretta disposizione dei valori in modo da visualizzarli sullo schermo.
Tutto il programma non fa altro che recuperare i dati e posizionarli nella Tabella al posto giusto. Ovviamente vi sono dei controlli per verificare se la Categoria è Aquilotti o Esordienti e se la Tipologia dell'incontro è un'Amichevole, una partita di Campionato o un Torneo. Inoltre vengono colorati di verde i tempi in cui la squadra ha vinto, in rosso quelli in cui ha perso e in giallo quando ha pareggiato. Niente di pù.