Istanziare la classe FormCheck



Con poche righe di HTML possiamo creare una pagina che contenga il form che ci consentirà di inviare i dati allo script PHP e di vedere la nostra classe FormCheck all'opera:

<html>
<head>
<style>label {width:120px; display:block; float:left; padding-right:10px; text-align:right;}</style>
</head>
<body>

<h1>Classe FormCheck</h1>

<form action="class_formcheck.php" method="post">
		
<label for="name">Nome:</label>
<input type="text" name="name" /><br />
<label for="lastname">Cognome:</label>
<input type="text" name="lastname" /><br />
<label for="email">E-Mail:</label>
<input type="text" name="email" /><br />
<label for="year">Anno di nascita:</label>
<input type="text" name="year" /><br />

<input type="submit" value="Invia" /><br />

</form>
</body>
</html>

Una volta premuto il pulsante "Invia", i dati verranno inviati tramite il metodo HTTP post, e gestiti sul server tramite il seguente snippet di codice:

// ----------------------------------------
// Implementazione
// ----------------------------------------
$form = new FormCheck();

if(!$form->checkAll()) { 
        exit();
}
else {
        echo "<p><strong>Nome:</strong>" . $form->clean['name'] . "</p>";
        echo "<p><strong>Cognome:</strong>" . $form->clean['lastname'] . "</p>";
        echo "<p><strong>Mail:</strong>" . $form->clean['email'] . "</p>";
        echo "<p><strong>Year:</strong>" . $form->clean['year'] . "</p>";
}

La variabile form è la nostra istanza della classe FormCheck. Se il metodo checkAll restituisce false, viene richiamata la funzione exit per terminare lo script. Non sarà necessario fornire alcun messaggio, perché la classe si occupa di stampare tutte le informazioni necessarie agli utenti. Se invece checkAll restituisce true, vengono stampati tutti i dati filtrati e pronti per l'uso presenti nella proprietà pubblica clean.

Per una prova pratica immediata, è possibile ad esempio inserire i seguenti dati per ottenere un risultato positivo:

  • Nome: "George"
  • Cognome: "White"
  • E-Mail: "george.white@server.com"
  • Anno di nascita: 1970

Ed il server risponderà con il seguente responso:

Il nome è stato inviato correttamente.
Il cognome è stato inviato correttamente.
[...]

Contrariamente, fornendo dati che non rispettano le condizioni desiderate:

  • Nome: "Sam"
  • Cognome: "Whitewhitewhitewhite"
  • E-Mail: "sam.white.com"
  • Anno di nascita: "1870"

Otterremo il seguente messaggio dallo script PHP:

Errore!
Il nome deve essere composto da caratteri alfanumerici 
e deve contenere dai 4 ai 10 caratteri al massimo.
[...]

Download

Ora che abbiamo analizzato in ogni dettaglio la nostra applicazione pratica, è arrivato il momento di effettuare delle prove manuali sul proprio Pc. Tramite questo link è possibile scaricare tutto il pacchetto completo del nostro esempio. L'archivio contiene il codice sorgente della gerarchia FormCheck e la pagina HTML che costituisce il nostro form.

Il mio consiglio personale è quello di analizzare attentamente il codice di tutti i componenti della gerarchia e provare a modificare i comportamenti a seconda delle proprie preferenze.

Ultimi articoli PHP

Sessioni PHP: cosa sono, come si usano

Dalla configurazione di PHP, alla gestione delle sessioni in un...

Continuous Integration: automatizziamo i client con Phing

Continuous Integration: automatizziamo i client con Phing. Esempi...

Archiviazione delle applicazioni PHP con Phar

Come incorporare intere applicazioni PHP all'interno di un singolo...

I traits in PHP 5.4

Cosa sono, a cosa servono e come si unsano i traits, la novità per...

PHP 5.4: il web server integrato

Impara ad usare il web server integrato nella versione 5.4 di PHP:...

Altri articoli

Guide PHP

Guida Yii Framework

Come creare applicazioni Web in modo semplice e veloce con il...

Guida Applicazioni Facebook con PHP

Come realizzare un'applicazione per Facebook. Dalle basi della...

Guida PHP con Windows e IIS

Installare ambienti per lo sviluppo e la produzione di applicazioni...

Altre guide

Newsletter @PHP

Ogni lunedì, direttamente nella tua e-mail: script, articoli, guide e tutorial su PHP, MySQL e Apache.

Iscriviti alla newsletter

Altre newsletter

Corsi in aula

Corso PHP per Webmaster

11 Giugno 2012 a Milano
Disponibilità: 7 Posti

Corso Google AdWords Base

25 Giugno 2012 a Milano
Disponibilità: 7 Posti

Corso Google AdWords Base

05 Giugno 2012 a Roma
Disponibilità: 7 Posti