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

    Come validare campi checkbox, e text (con numeri) di un form...

    Ciao a avrei la necessità di sapere come controllare, che un utente tra 5 caselle checkbox ne selezioni almeno una?
    Il controllo if che ho usato per gli altri campi, qui non riesco ad usarlo.

    Poi ho cercato con la funzione is_integer di controllare che l'utente in due campi di testo, inserisca solo numeri interi, perchè sono dei campi data, ma nulla, posso inserire qualsiasi cosa ed il messaggio di errore non viene mai fuori...

    Posso avere un piccolo aiuto?

    Grazie
    XAUSSSSSSSSSSS A TODOSSSSSSSSSSS

  2. #2
    forse così

    if (isset($_POST['nome1']) OR isset($_POST['nome2']) OR isset($_POST['nome3']) OR isset($_POST['nome4']) OR isset($_POST['nome5']))
    GdR Online - http://lenar.it/
    Yesterday is history. Tomorrow is mystery.
    Today is a gift. That's why it's called the present

  3. #3
    isset se si usa il form che ha messo lui dovrebbe sempre dare true...
    if (isset($_POST['nome1']) AND isset($_POST['nome2']) AND isset($_POST['nome3']) AND isset($_POST['nome4']) AND isset($_POST['nome5'])) {
    if ($_POST['nome1' OR $_POST['nome2'] OR $_POST['nome3'] OR $_POST['nome4'] OR $_POST['nome5']) {
    ... continui
    }
    else {
    die ("non hai selezionato nessun checkbox");
    }
    }

    per controllare se un campo contiene un valore numerico usa

    if (!is_numeric($campo)) die("il campo non è numerico");
    visitate http://camicio.altervista.org per caxxate varie :d

  4. #4
    Vi ringrazio intanto dell'aiuto.

    Ho implementato i vostri consigli sul mio codice ma non riesco a capire perchè non funzioni a dovere...

    e poi i posto il codice del file php richiamato dal modulo e poi vi spiego cosa succede

    -----------------
    <html>
    <head>
    <title>mail</title>
    </head>

    <body>
    <?
    /* file di controllo dati inseriti nel form e suo invio ad una mail predefinita */

    // controllo campi obbligatori inseriti
    if((!$_POST['nome'])||(!$_POST['cognome'])||(!$_POST['telefono'])||(!$_POST['email'])||
    (!$_POST['periodo_dal'])||(!$_POST['periodo_al'])||(!$_POST['notti'])||(!$_POST['totali_persone'])){
    echo"<center>ATTENZIONE NON HAI COMPILATO IN MODO CORRETTO IL FORM

    Torna al <a href=\"http://www.rome-holiday-apartments.com/appartamenti/italiano/modulo_info_ita.htm\">FORM</a>
    </center>";
    }else{
    /*controllo se il campo data è numerico */
    if(!is_numeric($periodo_dal||$periodo_al)){
    echo"<center>ATTENZIONE NON HAI COMPILATO I CAMPI DATA IN MODO CORRETTO

    Torna al <a href=\"http://www.rome-holiday-apartments.com/appartamenti/italiano/modulo_info_ita.htm\">FORM</a>
    </center>";
    }else{
    /* controllo che gli appartamenti siano stati almeno uno selezionati */
    if (($_POST['appartamento1'])&&($_POST['appartamento2'])&&($_POST['appartamento3'])&&($_POST['appartamento4'])&&($_POST['appartamento5'])){
    if (($_POST['appartamento1'])&&($_POST['appartamento2'])||($_POST['appartamento3'])||($_POST['appartamento4'])||($_POST['appartamento5'])){

    //comincio a scrivere le variabili da passare alla funzione mail

    // INDIRIZZO DEL DESTINATARIO
    $to="adriano.q@tin.it";

    // OGGETTO DEL MESSAGGIO
    $oggetto="Informazioni disponibilità appartamento/i";
    // corpo del messaggio con le varie variabili passate dal form
    $messaggio="Il Signor".trim(stripslashes($nome))." ".trim(stripslashes($cognome))."\n";
    $messaggio.="Chiede la disponibilità dell'appartamento/i in ".trim(stripslashes(($appartamento1)||($appartamen to2)||($appartamento3)||($appartamento4)||($appart amento5)))."\n";
    $messaggio.="Nel Periodo dal ".trim(stripslashes($periodo_dal))." ".trim(stripslashes($periodo_al))."\n";
    $messaggio.="Per un numero di ".trim(stripslashes($notti))." notti"."\n";
    $messaggio.="E per un totale di ".trim(stripslashes($totali_persone))." persone"."\n";
    $messaggio.="Il telefono del Signor".trim(stripslashes($nome))." ".trim(stripslashes($cognome))." è il ".trim(stripslashes($telefono))."\n";
    $messaggio.="La sua E-Mail è :".trim(stripslashes($email))."\n";
    $messaggio.="\n\n ----------------------------\n ------Informazioni Facoltative------\n";
    $messaggio.="Cellulare: ".trim(stripslashes($cellulare))."\n Fax: ".trim(stripslashes($fax))."\n";
    $messaggio.="Indirizzo: ".trim(stripslashes($indirizzo))."\n CAP: ".trim(stripslashes($cap))."\n";
    $messaggio.="Città: ".trim(stripslashes($citta))."\n Provincia: ".trim(stripslashes($provincia))."\n";
    $messaggio.="Stato: ".trim(stripslashes($stato))."\n";
    $messaggio.="I servizi Aggiuntivi Richiesti sono: ".trim(stripslashes($servizio1,$servizio2,$servizi o3,$servizio4,$servizio5))."\n";
    $messaggio.="L'utente ha i seguenti interessi: ".trim(stripslashes($interessi))."\n";
    $messaggio.="L'utente ci ha trovato tramite: ".trim(stripslashes($trovati_su))."\n"."--------FINE INFORMAZIONI-------";

    // INVIO CON CONTEMPORANEO CONTROLLO DELLA'VVENUOTO INVIO, CON MESSAGGIO DI ERRORE SE NON VA A BUON FINE
    if(mail($to,$oggetto,$messaggio)){
    echo"<center>Ok la Mail i tuoi dati sono stati inviati

    Riceverete entro 24 ore lavorative tutte le informazioni che avete rischiesto


    Grazie della collaborazione torna alla <a href=\"http://www.rome-holiday-apartments.com/appartamenti/italiano/presentazione.html\">HOME PAGE</a>
    </center>";
    }else{
    echo"<center>ATTENZIONE NON E' STATO POSSIBILE INVIARE LE INFORMAZIONI

    SE HAI RICEVUTO QUESTO MESSAGGIO PER FAVORE CONTATTA IL<a href=\"mailto:adriano.q@tin.it\">WEBMASTER</a>
    </center>";
    }
    }else{
    /* messaggio di errore per gli appartamenti non selezionati */
    echo"<center>ATTENZIONE NON HAI SELEZIONATO GLI APPARTAMENTI

    Torna al <a href=\"http://www.rome-holiday-apartments.com/appartamenti/italiano/modulo_info_ita.htm\">FORM</a>
    </center>";
    }
    }
    }
    }

    ?>

    </body>
    </html>

    ---------------------------------------------

    In poche parole, se non inserisco nessun valore, nei campi all'interno del primo controllo IF, giustamente il messaggio di errore di errata compilazione generica va in esecuzione; se invece inserisco tutto, anche i campi che obbligatoriamente devono essere numerici, va sempre in esecuzione il messaggio di errore del controllo "!is_numeric" dei campi data, ma la data è inserita giustamente!

    Per prova quindi ho provato a disabilitare questo controllo e comunque andare avanti, al controllo successivo quello su campi "CHECKBOX", be seleziono o non seleziono viene fuori solo una pagina bianca nessun errore nessuna conferma di invio della mail...

    Se invece disabilito anceh questo controllo sui campi checkbox, e quindi rimango solo con il primo semplice if di controllo, la mail viene "quasi" regolarmente.
    Il "Quasi" è dovuto al fatto che nella mail cmq non viene fuori il nome della variabile selezionata dal campo checkbox...ma solo un numero perchè?

    Spero di essere stato chiaro, grazie di nuovo.
    XAUSSSSSSSSSSS A TODOSSSSSSSSSSS

  5. #5
    up........1
    XAUSSSSSSSSSSS A TODOSSSSSSSSSSS

  6. #6
    up......2
    XAUSSSSSSSSSSS A TODOSSSSSSSSSSS

  7. #7
    ultimo up...
    Nessuno mi può aiutare?
    XAUSSSSSSSSSSS A TODOSSSSSSSSSSS

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.