PHP: le tendine per selezionare una data.

Spesso quando abbiamo a che fare con form di registrazione c’è la necessitè di selezionare la data.
Ora vanno molto di moda i calendari da cui si sceglie la data desiderata, ovviamente se su questi calendari non si può scegliere l’anno raggiungere date dell’anno prossimo può essere difficoltoso.
In generale il numero di click da effettuare per selezionare una data da questi calendarietti è maggiore rispetto a quello necessario per scegliere una data da 3 tendine, una per il giorno, una per il mese e una per l’anno.
Il vantaggio del calendarietto è che ci mostra i giorni della settimana, che nel caso della prenotazione di una macchina, di un volo o di un hotel, sono estremamente rilevanti.
Dopo questa introduzione passiamo al nostro scopo, costruire con il php le select necessarie a selezionare una data.
Innanzi tutto scegliamo il php perchè sono operazioni ripetitive, e i linguaggi di programmazione servono anche a sgravarci dal peso della ripetività, ma la cosa meno immediata dell’affidare ad una macchina la ripetizioni è che diminuiamo la possibilità di errore.

Passiamo al codice:



Questo con un copia e incolla potrebbe bastare, ma se vogliamo essere dei precisoni e mostrare il nome del mese possiamo utilizzare questo codice (array mesi):

$mesi = array(
'Gennaio',
'Febbraio',
'Marzo',
'Aprile',
'Maggio',
'Giugno',
'Luglio',
'Agosto',
'Settembre',
'Ottobre',
'Novembre',
'Dicembre'
); 

L’array dei mesi php l’abbiamo preso dal blog di webtocom

La select dei mesi sarà questa:

Bisogna notare che nell’option abbiamo aggiunto l’attributo value, infatti vogliamo passare un valore numerico e non il nome del mese, inoltre abbiamo aggiunto 1 perchè vogliamo passare valori da 1 a 12 e non da 0 a 11 (questi sono necessari per prendere il giusto mese dall’array).