16 SWITCH selezione multipla

Dato il seguente codice HTML

Secure… Upload <input type=”radio” value=”upload” name=”secure[]” />
FTP <input type=”radio” value=”ftp” name=”secure[]”  />mail <input type=”radio” value=”mail” name=”secure[]”  />Voip <input type=”radio” value=”Voip” name=”secure[]”  />
<input type=”submit” value=”Invia” /> <input type=”reset” />
Email:
Password:

Secure… Upload
FTP

mail

Voip

Se voglio comunicare solo un’ istruzione di questi radio button posso utilizzare l’istruzione SWITCH

switch ($secure){

case "upload":

echo "Upload sicuro attivato";

break;

case "ftp":

echo "FTP sicuro attivato";

break;

case "mail":

echo "mail sicura attivata";

break;

case "voip":

echo "Upload sicuro attivato";

break;

default:

echo "Nessun servizio sicuro è stato scelto";

break

}

Si poteva eseguire lo stesso programma con diversi if / else, in molti casi switch / case è più lineare e leggibile.

Se 1 dei casi viene verificato, il flusso del programma finisce dopo l’istruzione switch (quindi dopo la graffa), altrimenti viene eseguito il default che è come un jolly acchiappatutto.

Un altra possibilità è quella di concatenare 2 case assieme saltando l’istruzione break:

case "upload":case "ftp":

echo "trasferimento sicuro attivato";

break;

In questa situazione la selezione del radio button può essere sia upload che ftp.

case "upload":

echo "sono passato di qui";

case "ftp":

echo "trasferimento sicuro attivato";

break;

Se scelgo upload mi stampa i 2 messaggi, se scelgo ftp, solo l’ultimo.