martina calosi
Realizzazione siti internet firenze
Prime Organic
 
sponsored link
         
Inserire nome del sito
Controllo delle informazioni inserite in un form tramite php [primi passi]
[inserito il 05 gen 05 09:41, scritto da Andrea M.]
Tutorial letto 14811 volte

La verifica ed il controllo delle informazioni inserite da un utente in form costituisce un'operazione di primaria importanza; un form non controllato pu? dare grandissimi problemi di sicurezza per le vostre applicazioni web: pensate sia ad utenti "alle prime armi" che potrebbero non capire che tipo i dato state richiedendo loro o molto peggio ad utenti malintenzionati che vogliano danneggiare il vostro sito.

Il controllo delle informazioni inserite ? quindi un'ottima procedura per proteggere il proprio sito dai malintenzionati ed in pi? ? un cordiale aiuto a quegli utenti poco esperti che potrebbero commettere involontariamente errori.

Iniziamo con un esempio di un form [file form.html]:
<form action="controllo_info.php" method="post">
nome:
<input type="text" size="20" name="nome">
quanti anni hai?
<input type="text" size="4" name="anni">
sesso:
<select name="sesso">
  <option>scegli</option>
  <option value="maschio">maschio</option>
  <option value="femmina">femmina</option>
</select>
email:
<input type="text" size="20" name="email">
<input type="submit" value=" invia ">
visto dal browser [nel esempio il form non funziona volutamente]

nome:

et?:

sesso:

email:

In questo tutorial non tratteremo le caratteristiche dei form, se desiderate farlo potete consultare il tutorial "I form ed gli elementi che gli che li compogano" che verte proprio su questo argomento

Il form punta verso un file d'elaborazione: controllo_info.php .
In questo file, prima di procedere all'elaborazione delle informazioni provenienti del form, dovremo fare alcuni controlli. Di seguito alcuni suggerimenti per controllare i dati provenienti da un form di questo tipo:

  • inanzitutto voglio che l'utente inserisca tutte le informazioni che richiedo all'interno del form, ovvero l'utente deve compilare tutti i campi per poter procedere all'elaborazione del form
  • il campo "et?" deve contenere solo numeri e non altri caratteri: non si ? mai vista un et? "cew4g43"
  • il campo "email" deve contenere il carattere "@" altrimenti non ? un indirizzo email esistente

<?
# controllo campi compilati
if (( $nome == "" ) || ( $et? == "" ) || ( $sesso == "" ) || ( $email == "" )) {
echo "<h3>Errore!</h3><br>Deve compilare tutti i campi dal form per continuare<br>
La preghiamo di <A HREF=\"javascript:history.go(-1)\">tornare indietro e correggere</A>. Grazie";
exit;
}

# controllo campo et? compilato con numeri
if (!is_numeric($telefono)) {
echo "<h3>Errore!</h3><br>Deve inserire la sua et?<br>
La preghiamo di <A HREF=\"javascript:history.go(-1)\">tornare indietro e correggere</A>. Grazie";
exit;
}

# controllo campo email - email valida
if (!ereg("@",$email)){
echo "<h3>Errore!</h3><br>Deve inserire una email valida<br>
La preghiamo di <A HREF=\"javascript:history.go(-1)\">tornare indietro e correggere</A>. Grazie";
exit;
}

# inizio elaborazione dei dati
?>

Analizziamo il codice php che effettua il controllo.

if (( $nome == "" ) || ( $et? == "" ) || ( $sesso == "" ) || ( $email == "" ))
controlla che tutti i campi o meglio le variabili ad essi associati contengani almeno un valore cio? che l'utente abbia compilato tutti i campi come volevamo.

if (!is_numeric($telefono))
questo codice controllla che la variabile $telefono contengo come valore solo numeri o stringi di numeri.

if (!ereg("@",$email))
con questo if controllerete che nella variabile $email ci sia il carattere "@" ovvero controlla la presenza della "@" nel valore della variabile $email

Tutto quello che si trova dentro le parentesi { e } ? l'azione che php dovr? effettuare nel caso in cui "if" abbia un esito vero.
Il comando echo stamper? a video sul browser del'utente il messaggio di errore e lo inviter? a correggerlo per poter proseguire.
(la presenza di exit; prima della parentesi di chiusura } interrompe l'elaborazione dello script).

Adesso che avete fatto un primo e semplice controllo potete utilizzare i dati ottenuti dal form per archiviarli in un database MySQL, inviarli per email, stamparli a video o far elaborarli come meglio credete.



Visualizza tutti i TutorialArchivio  Cerca un termine nei TutorialCerca  Leggi i Tutorial pił recentiPiù recenti  I 10 Tutorial più lettiPiù lette  Invia questo Tutorial ad un amicoInvia ad un amico  Versione stampabileStampa Tutorial
Notizia precedente
La funzione PHP "mail()" - [ 2?parte ]
 

Modulo sviluppato da Meganoide's news
Powered by Spacemarc.it

Notizia successiva
Contatore d'accessi in PHP/MySQL