Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    un serio recupero dati da un form

    Ciao a tutti e grazie a chi fin'ora mi ha risposto con competenza , oltre che pazienza .

    Mi chiedevo come creare una seria verifica dal mio form perchè con il mio METODO NEWBIE qualcosa ricavo ma .......vedere le cose serie è un'altra cosa .....
    Per esempio in questo mio modo se uno dei campi è vuoto vengono comunque inviati gli altri valori.........e sicuramente il tutto è pieno di altri bug .

    Qualcuno ha un modo piu' professionale o elegante di estrarre i valori ? ( i campi partenza erichiesta si riferiscono alle lingue........trattasi di materia di traduzioni )

    Secondo me se una qualsiasi delle mancanze dell'utente si verifica , questa pagina dovrebbe presentare una finestra di stop...........non so' se mi spiego............INVECE IO RIESCO SOLO
    A FARE QUELLO CHE VEDETE .

    grazie

    <?
    $nome=$_POST['nome'];
    $cognome=$_POST['cognome'];
    $email=$_POST['email'];
    $telefono=$_POST['telefono'];
    $partenza=$_POST['partenza'];
    $richiesta=$_POST['richiesta'];
    $messaggio=$_POST['campotesto'];

    #eliminazione degli spazi
    $nome=trim($nome);
    $cognome=trim($cognome);
    $email=trim($email);
    $telefono=trim($telefono);
    $partenza=trim($partenza);
    $richiesta=trim($richiesta);
    $messaggio=trim($messaggio);

    #controllo la lunghezza dei campi nome , cognome

    $lungh_nome=strlen($nome);
    $lungh_cognome=strlen($cognome);
    $lungh_partenza=strlen($partenza);
    $lungh_richiesta=strlen($richiesta);
    $lungh_messaggio=strlen($messaggio);

    if ($lungh_nome <= 3) {
    echo "Spiacente,il nome deve contenere almeno 3 caratteri

    ";
    } else {
    echo "il tuo nome è $nome

    ";
    }

    if ($lungh_cognome <= 3 ) {
    echo "Spiacente,il cognome deve contenere almeno 3 caratteri

    ";
    } else {
    echo "il tuo cognome è $cognome

    ";
    }

    if ($lungh_partenza <= 3) {
    echo "Spiacente,la lingua di partenza deve contenere almeno 3 caratteri

    ";
    } else {
    echo "la lingua di partenza è $partenza

    ";
    }

    if ($lungh_richiesta <= 3) {
    echo "Spiacente,la lingua richiesta deve contenere almeno 3 caratteri

    ";
    } else {
    echo "la lingua richiesta è $richiesta

    ";
    }

    if ($lungh_messaggio <= 3) {
    echo "Spiacente,il messaggio deve contenere almeno 3 caratteri

    ";
    } else {
    echo "il tuo mesaggio è $messaggio

    ";
    }

    #ho impostato la variabile a false in modo che quando c'e mi mostri torna indietro
    $errore=false;

    if ( ($nome == "") || ($cognome == "")|| ($email == "")|| ($telefono == "")||($partenza== "")|| ($richiesta== "")) {

    #se solo uno dei campi è vuoto
    $errore=true;
    echo "
    Spiacente, devi compilare tutti i campi

    ";
    }
    #controllo la mail, imposto una variabile che poi confronto con email
    $pattern="^[^@ ]+@[^@ ]+\.[^@ \.]+$";
    if (!ereg($pattern,$email)) {
    echo " \"$email\"ma non è una email valida
    ";
    }else{
    echo "Questa e la tua email $email
    ";
    }
    ?>

  2. #2
    basterebbe fare un solo if invece di tutti quelli che hai messo! ad esempio:

    if (strlen(trim($_POST['nome'])) <= 3) {
    echo "Spiacente,il cognome deve contenere almeno 3 caratteri

    ";
    } else {
    echo "il tuo cognome è $cognome

    ";
    }

    per la email basta un più semplice

    if (strpos($_POST['email'], '@')) {
    echo "Questa e la tua email $email
    ";
    }
    }else{
    echo " \"$email\"ma non è una email valida
    ";
    }

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.