Campi obbligatori nel form mail

  • Creatore Discussione Creatore Discussione matt86
  • Data di inizio Data di inizio

matt86

Nuovo Utente
25 Feb 2006
11
0
0
Ciao a tutti, ho creato un form mail in php. Adesso mi sorge un problema, non riesco a creare un controllo per obbligare l'utente a compilare alcuni campi (Campi obbligatori). Ve ne sarei veramente grato se mi aiutaste, dato che non sono molto esperto perchè è il mio primo progetto in php.

Grazie
Daniele


P.S. Ho allegato il file in formato zip con le pagine che ho utilizzato per vedere anche voi il codice, e per aiutarmi a creare questo controllo.
 

Allegati

Ho dato uno sguardo veloce al tuo codice. Lo script go_sendfeedback.php è molto essenziale e non viene fatta alcuna validazione dei dati passati dal form e questo, tra le altre cose, lo rende vulnerabile (qualcuno potrebbe usarlo come gateway http per inviare spam). Parlo in particolare della variabile $message che passi brutalmente alla funzione mail().

Per controllare l'immissione dei campi puoi usare anche javascript (se la tua preoccupazione è un campo dimenticato dall'utente mentre compila il form) e poi validare comunque i dati con PHP per verificare che non passi roba strana dal tuo script. Oppure puoi fare tutto con PHP. Per i controlli... beh, questo dipende da quali campi devi verificare. Per vedere se un campo è stato compilato potesti anche fare semplicemente così:

Codice:
if ( empty($_POST['tuocampo']) ) die ('Errore');

Ma se fai così su tutti i campi, a mio avviso, diventa un controllo troppo grossolano.

Riprendendo l'esempio del campo "telefono" in cui si parlava in un altro thread (http://forum.mrwebmaster.it/showthread.php?t=7733) potresti fare così:

Codice:
$telefono = str_replace(" ","",$_POST['telefono']);
$telefono = str_replace("-","",$telefono);
$telefono = str_replace("/","",$telefono);
if ( !is_numeric($telefono) ) echo "...errore...";

Ciao ;)
 
Ultima modifica:

Discussioni simili