Ne ho fatto un'altro tipo con un solo file calendario per ogni serie, qui puoi vedere il risultato:
http://www.franknet.altervista.org/test/SceltaMenu2.htm
Il file SceltaMenu.htm:
Codice HTML:
<HTML>
<HEAD>
<TITLE>Calendario</TITLE>
<META http-equiv=Content-Type content="text/html; charset=windows-1252"></HEAD>
<BODY>
<script>
function MenuSerie(serie)
{
with (serie)
{
ref=options[selectedIndex].value;
document.location=ref;
}
}
</script>
<P align="center"><SELECT name=Serie_Sx onChange="MenuSerie(this)">
<OPTION>* Scelta Serie *</OPTION>
<option value="incontri.php?page=1&serie=A">Serie A</option>
<option value="incontri.php?page=1&serie=B">Serie B</option>
<option value="incontri.php?page=1&serie=C1A">Serie C1A</option>
<option value="incontri.php?page=1&serie=C1B">Serie C1B</option>
<option value="incontri.php?page=1&serie=C2A">Serie C2A</option>
<option value="incontri.php?page=1&serie=C2B">Serie C2B</option>
<option value="incontri.php?page=1&serie=C2C">Serie C2C</option>
</SELECT></P>
</BODY>
</HTML>
al solito serve per scegliere la serie.
Il file cardine diventa ora, unico e solo, incontri.php:
Codice PHP:
<html>
<head>
<meta http-equiv="Content-Language" content="it">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Giornate</title>
<?
// giornata corrente
IF ($_GET['page'] == "")
{
$iPageCurrent = 1;
}ELSE{
$iPageCurrent = $_GET['page'];
//END IF
}
// giornata corrente
IF ($_GET['serie'] == "")
{
$serie = "A";
}ELSE{
$serie = $_GET['serie'];
//END IF
}
//leggo il file serieX.txt dove [X] sta per la serie prescelta
//da questo file ricavo le giornate della serie
$nomefile = "serie".$serie.".txt";
$handle=fopen($nomefile ,"r"); //apro il file
// numero totale di giornate
$iPageCount = fgets($handle, 4096);
fclose ($handle); #chiudo il file
?>
<script>
function MenuGiornate(giornata)
{
with (giornata)
{
ref=options[selectedIndex].value;
document.location=ref;
}
}
</script>
</head>
<body>
<P align="center"><SELECT name=Giornata_Sx onChange="MenuGiornate(this)">
<OPTION value=SceltaMenu2.htm>Torna a Scelta Serie</OPTION>
<?
//Creazione automatica del menu a discesa
for($numPage = 1; $numPage <= $iPageCount; $numPage++)
{
echo("<option");
if ($iPageCurrent==$numPage)
{
echo(" selected");
}
echo(" value='incontri.php?page=$numPage&serie=$serie'>Giornata $numPage</option>")."\n";
}
?>
</SELECT></P>
<p align="center"><font size="6">Giornata <?=$iPageCurrent?> - Serie <?=$serie?></font><br><br>
<?
//setto il flag di visualizzazione incontri a 0 (non visualizzarli)
$flagvideo=0;
//leggo il file serieX.txt dove [X] sta per la serie prescelta
//da questo file ricavo le giornate della serie
$nomefile = "serie".$serie.".txt";
// apro il file in lettura
$handle=fopen($nomefile ,"r"); //apro il file
// eseguo il ciclo finchè non raggiungo la fine del file
while (!feof ($handle)){
//archivio la riga del file che sto leggendo in
//questo momento nella variabile $linea
$linea=fgets($handle, 4096);
//visualizzo gli incontri della giornata prescelta
if (substr($linea,0,1)=="[")
//echo $flagvideo."<br>";
{
if (substr($linea,0,strlen($iPageCurrent)+2)=="[".$iPageCurrent."]")
{
//setto il flag di visualizzazione incontri a 1 (visualizzarli)
$flagvideo=1;
}
if ($flagvideo==1 and substr($linea,0,15)=="[fine giornata]")
{
//setto il flag di visualizzazione incontri a 0 (non visualizzarli)
$flagvideo=0;
// interrompo il ciclo
break;
}
}
if ($flagvideo==1 and (substr($linea,0,strlen($iPageCurrent)+2)!="[".$iPageCurrent."]"))
{
echo $linea."<br>";
}
}
// chiudo il file
fclose ($handle);
?>
</p>
</body>
</html>
Infine per ogni Serie, deve essere creato un file serieX.txt, dove [X] è il nome della serie. Questi file contengono l'intero calendario, di andata e ritorno della stagione. Più o meno si compone così:
Codice:
38
[1]
10/09/2006
Atalanta-Ascoli 3 1
Cagliari-Catania 0 1
Chievo-Siena 1 2
Fiorentina-Inter 2 3
Messina-Udinese 1 0
Milan-Lazio 2 1
Palermo-Reggina 4 3
Roma-Livorno 2 0
Sampdoria-Empoli 1 2
Torino-Parma 1 1
[fine giornata]
[2]
17/09/2006
Ascoli-Messina
Catania-Atalanta
Empoli-Chievo
Inter-Sampdoria
Lazio-Palermo
Livorno-Fiorentina
Parma-Milan
Reggina-Cagliari
Siena-Roma
Udinese-Torino
[fine giornata]
Ho inserito solo due giornate, ma il resto viene facile, eventualmente me li richiedi e te l'invio via e-mail.
- Il numero in testa definisce le giornate totali.
- il numero racchiuso tra parentesi quadra identifica la giornata.
- alla fine degli incontri di una data giornata ho inserito un flag "[fine giornata], si poteva optare anche con un ciclo degli incontri per giornata, ma in quel momento ho risolto così, eventualmente lo puoi modificare facilmente (se hai qualche base in php).
Scusa la rozzezza del codice, ma in fretta e furia non sono riuscito a fare di meglio. Tra l'altro non è che sia un'esperto di php, mi arrangio solo un pochino.
Fammi sapere.
Ciao.