Sono giorni che ci sto dietro e forse sono giunto alla soluzione. Si tratta di una visualizzazione.
In un database sono contenuti: nome alunno, data e voto ottenuto. Passandogli un determinato mese da trovare, deve risultare una tabella che incolonni sotto ogni giorno il voto ottenuto dagli studenti (diciamo un registro di classe).
Questo è lo schema che deve risultare:
Codice PHP:
Alunni 1 2 3 4 5... ==> giorni del mese
___________________
A 8 6 ==> alunni con voto sotto il rispettivo giorno
B 5 7
Ipotizzo che il mese scelto sia gennaio. Questo è il codice che ho implementato. Se qualcuno ha la pazienza di guardarlo, magari mi potete dire se ci sono errori (non ho modo di provarlo di persona, perchè il database non è ancora funzionante).
NB: if($i%2==0) serve per colorare le righe diversamente, a seconda che sia una riga pari o dispari; è solo una scelta visuale
Codice PHP:
$classe=$_POST['classe'];
$sezione=$_POST['sezione'];
$fascia=$_POST['fascia'];
$materia=$_POST['materia'];
$mese=$_POST['mese'];
if($mese=='gennaio'){
$q = "SELECT * FROM valutazioni WHERE Valutazione_classe='$classe' AND
valutazione_sezione='$sezione' AND Valutazione_fascia='$fascia' AND Valutazione_data_voto='%-01-%'";
}
echo "<table width='80%' cellpadding='3' cellspacing='1' border='0'
class='sfondomenu' align='center'>";
echo "<tr><th>Voti per classi e per data</th></tr>";
echo "<tr class='row1'><td align='center' nowrap>";
echo "<table class='sottomenu' cellpadding='5' cellspacing='0' border='0'
width='100%' align='center'>";
if(($mese=='gennaio') OR ($mese=='marzo') OR ($mese=='maggio') OR
($mese=='luglio') OR ($mese=='agosto') OR ($mese=='ottobre') OR ($mese=='dicembre')){
echo "<tr><td class='tabsup'>Alunno</td>";
echo "<td class='tabsup'>1</td>";
echo "<td class='tabsup'>2</td>";
echo "<td class='tabsup'>3</td>";
echo "<td class='tabsup'>4</td>";
echo "<td class='tabsup'>5</td>";
echo "<td class='tabsup'>6</td>";
echo "<td class='tabsup'>7</td>";
echo "<td class='tabsup'>8</td>";
echo "<td class='tabsup'>9</td>";
echo "<td class='tabsup'>10</td>";
echo "<td class='tabsup'>11</td>";
echo "<td class='tabsup'>12</td>";
echo "<td class='tabsup'>13</td>";
echo "<td class='tabsup'>14</td>";
echo "<td class='tabsup'>15</td>";
echo "<td class='tabsup'>16</td>";
echo "<td class='tabsup'>17</td>";
echo "<td class='tabsup'>18</td>";
echo "<td class='tabsup'>19</td>";
echo "<td class='tabsup'>20</td>";
echo "<td class='tabsup'>21</td>";
echo "<td class='tabsup'>22</td>";
echo "<td class='tabsup'>23</td>";
echo "<td class='tabsup'>24</td>";
echo "<td class='tabsup'>25</td>";
echo "<td class='tabsup'>26</td>";
echo "<td class='tabsup'>27</td>";
echo "<td class='tabsup'>28</td>";
echo "<td class='tabsup'>29</td>";
echo "<td class='tabsup'>30</td>";
echo "<td class='tabsup'>31</td>";
echo "</tr>";
if($mese=='gennaio'){
for($i=0;$i<$num;$i++){
$cognome=mysql_result($query,$i, "Valutazione_alunno_cognome");
$nome=mysql_result($query,$i, "Valutazione_alunno_nome");
if($i%2==0){
echo "<tr>";
echo "<td class="."tabDispari".">$nome
$cognome</td>";
}
else{
echo "<tr>";
echo "<td class="."tabPari".">$nome $cognome</td>";
}
for($k=1;$k<31;$k++){
$ris = "SELECT * FROM Valutazioni WHERE
Valutazione_alunno_cognome='$cognome' AND valutazione_alunno_nome='$nome' AND Valutazione_data_voto='%-01-$k'";
$data=mysql_result($ris,$k, "Valutazione_data_voto");
$voto=mysql_result($ris,$k, "Valutazione_voto");
if($i%2==0){
echo "<td class="."tabDispari".">$voto</td>";
}
else{
echo "<td class="."tabPari".">$voto</td>";
}
echo '</tr>';
}
}
}
}