100 likes | 205 Views
Corso di Informatica A.A. 2010-2011. Corso di Informatica Laurea Triennale - Comunicazione&Dams. Dott.ssa Adriana Pietramala a.pietramala@mat.unical.it. Laurea Triennale - Comunicazione&Dams - Unical. PHP. Esercizio: traccia. Corso di Informatica A.A. 2010-2011. ES1 Data la form:
E N D
Corso di Informatica A.A. 2010-2011 Corso di Informatica Laurea Triennale - Comunicazione&Dams Dott.ssa Adriana Pietramala a.pietramala@mat.unical.it Laurea Triennale - Comunicazione&Dams - Unical
PHP Esercizio: traccia Corso di Informatica A.A. 2010-2011 ES1 Data la form: Anno di nascita, Nome, password, Scrivere un programmaPhpcheverifichi le seguenticondizioni: • Il campo anno di nascita deve essere un numero Laurea Triennale - Comunicazione&Dams - Unical
PHP L’enunciato if Corso di Informatica A.A. 2010-2011 Paginaprincipale <html> <head> <title>PHP Test HTML</title> </head> <body> <FORM method="post" action=“pasSec-es2.php"> Nome: <INPUT type="text" name="nome"><BR> Anno di nascita: <INPUT type="text" name="anno"><BR> Password: <INPUT type="text" name=“pwd"><BR> <INPUT type="submit" value="Invia"> <INPUT type="reset" value="cancella"> </FORM> </body> </html> Paginasecondaria <html> <head> <title>PHP Test HTML</title> </head> <body> <H3>Verifica che la stringa anno sia un numero</H3> <?PHP $anno = $_POST["anno"]; $ris = is_numeric($anno); if($ris == true) echo "L'Anno è un numero<BR>"; else echo "L'anno deve essere un numero!!!<BR>"; ?> </body> </html> Laurea Triennale - Comunicazione&Dams - Unical
PHP Esercizio: traccia Corso di Informatica A.A. 2010-2011 ES2 Data la form: Anno di nascita, Nome, password, Scrivere un programmaPhpcheverifichi le seguenticondizioni: • Il nome contenga almeno 2 caratteri Laurea Triennale - Comunicazione&Dams - Unical
PHP L’enunciato if Corso di Informatica A.A. 2010-2011 Pagina principale <html> <head> <title>PHP Test HTML</title> </head> <body> <FORM method="post" action=“pasSec-es2.php"> Nome: <INPUT type="text" name="nome"><BR> Anno di nascita: <INPUT type="text" name="anno"><BR> Password: <INPUT type="text" name=“pwd"><BR> <INPUT type="submit" value="Invia"> <INPUT type="reset" value="cancella"> </FORM> </body> </html> Pagina secondaria <html> <head> <title>PHP Test HTML</title> </head> <body> <H3>Verifica che il nome contenga almeno 2 caratteri</H3> <?PHP $nome= $_POST["nome"]; $nomeSenzaSpazi = trim($nome); $lunghezza = strlen($nomeSenzaSpazi); echo "Lunghezza nome: $lunghezza"; if ($lunghezza < 2) echo " Nome non valido!"; else echo " Nome OK!"; ?> </body> </html> Laurea Triennale - Comunicazione&Dams - Unical
PHP Esercizio: svolgimento Corso di Informatica A.A. 2010-2011 Pagina principale: <HTML> <HEAD> <title>Registrazione</title> </HEAD> <body> <h2>Inserisci i tuoi dati per registrarti</h2> <FORM method="post" action="controlli-stringhe.php"> Nome: <INPUT type="text" name="nome"><BR> Cognome: <INPUT type="text" name="cognome"><BR></TD> Password: <INPUT type="text" name="pwd"> contiene il carattere – seguito da soli numeri </I><BR> E-mail: <INPUT type="text" name="mail"><BR> <INPUT type="submit" value=Invia> <INPUT type="reset" value=Annulla> </FORM> </body></html> La pagina principale è indipendente da come viene realizzato il programma php Laurea Triennale - Comunicazione&Dams - Unical
PHP Esercizio: traccia Corso di Informatica A.A. 2010-2011 ES2 Data la form: Nome, cognome, password ed email, Scrivere un programmaPhpcheverifichi le seguenticondizioni: • Verifica che la password sia valida. Il password è valida se: è lunga almeno 6 caratteri (esclusi gli spazi inizio fine) , contiene il carattere – in seconda posizione ed il carattere @ in terza posizione FORMULARE UNA VERSIONE DEL PROGRAMMA USANDO SOLO LA STRUTTURA DI CONTROLLO IF ED UNA VERSIONE CHE USA ANCHE L’OPERATORE AND Laurea Triennale - Comunicazione&Dams - Unical
PHP Programmi Corso di Informatica A.A. 2010-2011 SOLUZIONE CON LA SOLA STRUTTURA DI CONTROLLO IF Paginasecondaria <html> <head> <title>PHP Test HTML</title> </head> <body> <H3>Verifica che ila password sia validoa la password è valida se: è lunga almeno 6 caratteri (esclusi gli spazi), contiene il carattere – in seconda posizione ed il carattere @ in terza posizione</H3> I dati inseriti sono:<BR> <UL> <LI>Nome: <?PHP echo $_POST["nome"] ?></li> <LI>Cognome: <?PHP echo $_POST["cognome"] ?></li> <LI>Email: <?PHP echo $_POST[" mail "] ?></li> <LI>Password: <?PHP echo $_POST["pwd"] ?></li> </UL> <?PHP $password = $_POST["pwd"]; $pwdSenzaSpazi = trim($password); $lunghezzaPWD = strlen($pwdSenzaSpazi); if($lunghezzaPWD >=6) { $posizioneMENO = strpos($pwdSenzaSpazi,"-"); if($posizioneMENO ==2) { $posizioneChiocciola = strpos($pwdSenzaSpazi,"@"); if($posizioneChiocciola ==3) echo "la password è valida"; else echo "la password Non è valida, deve contenere il carattere @ in posizione 3"; } else echo "la password Non è valida, deve contenere il carattere - in posizione 2"; }else echo "la password ha una lunghezza inferiore a 6 caratteri. Non valida"; ?> </body> </html> Laurea Triennale - Comunicazione&Dams - Unical
PHP Operatori logici Corso di Informatica A.A. 2010-2011 SOLUZIONE CON OPERATORE LOGICO AND Paginasecondaria <html> <head> <title>PHP Test HTML</title> </head> <body> <H3>Verifica che il codice sia valido. Il codice è valido se: è lungo almeno 6 caratteri (esclusi gli spazi), contiene il carattere – in seconda posizione ed il carattere @ in terza posizione</H3> I dati inseriti sono:<BR> <UL> <LI>Nome: <?PHP echo $_POST["nome"] ?></li> <LI>Cognome: <?PHP echo $_POST["cognome"] ?></li> <LI>Email: <?PHP echo $_POST[" mail "] ?></li> <LI>Password: <?PHP echo $_POST["pwd"] ?></li> </UL> <?PHP $password = $_POST["pwd"]; $pwdSenzaSpazi = trim($password); $lunghezzaPWD = strlen($pwdSenzaSpazi); $posizioneMENO = strpos($pwdSenzaSpazi,"-"); $posizioneChiocciola = strpos($pwdSenzaSpazi,"@"); if($lunghezzaPWD >=6 and $posizioneMENO ==2 and $posizioneChiocciola ==3) { echo"la password è valida"; } else echo "la password ha una lunghezza inferiore a 6 caratteri. Non valida"; ?> </body> </html> Laurea Triennale - Comunicazione&Dams - Unical
PHP Operatori logici Corso di Informatica A.A. 2010-2011 CONSIDERAZIONI La soluzione ottenuta sfruttando l’operatore AND è più chiara (leggibilità del codice) ed è più breve. La leggibilità del codice è una caratteristica molto importante perché consente al programmatore di avere una visione più chiara di cosa fa il programma e, quindi, lo facilita nelle operazioni di manutenzione. Si noti che l’operatore AND può essere scritto anche come && Laurea Triennale - Comunicazione&Dams - Unical