Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    24

    form contatti in php con checkbox

    Salve a tutti, sto realizzando un modulo dei contatti semplice in php che includa una checkbox per l'accettazione della policy sulla privacy. In teoria quindi dovrei fare in modo che il suddetto modulo venga inviato a condizione che venga messo il segno di spunta sul checkbox dell'accettazione della policy sulla privacy in caso contrario dovrebbe apparire un messaggio di errore.

    Questa è la pagina contatti.php dove c'è il modulo:

    codice:
    <form method="post" action="invio.php">  
    Nome: <input type="text" name="name" size="25"> 
    E-mail: <input type="text" name="email" size="25">
    Oggetto: <input type="text" name="subject" size="25">
    Messaggio:  <textarea rows="9" name="msg" cols="19"></textarea>
    <input type="submit" value="Invia" name="submit"> 
    </form>

    Mentre questa è la pagina invio.php che è la pagina di conferma:

    <?php $receiverMail = "indirizzo@provider.it"; $name = ltrim(rtrim(strip_tags(stripslashes($_POST['name'])))); $email = ltrim(rtrim(strip_tags(stripslashes($_POST['email'])))); $subject = ltrim(rtrim(strip_tags(stripslashes($_POST['subject'])))); $msg = ltrim(rtrim(strip_tags($_POST['msg']))); $ip = getenv("REMOTE_ADDR"); $msgformat = "From: $name ($ip)\nEmail: $email\n\n$msg"; // VALIDATION if(empty($name) || empty($email)) { echo "<h3>L'e-mail non è stata spedita.</h3>

    Compilare i campi richiesti</p>"; } elseif(!ereg("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $email)) { echo " <h3>L'e-mail non è stata spedita.</h3>

    L'indirizzo e-mail non è valido.</p>"; } else { mail($receiverMail, $subject, $msgformat, "From: $name <$email>"); echo <h3>Grazie per aver interagito!</h3>"; } ?>

    Questo modulo l'ho già testato e funziona, rimane solo il problema su dove e come inserire la checkbox per validare il modulo e impedirne l'invio se non si autorizza il trattamento dei dati.

    Grazie a chi mi aiuterà!

  2. #2
    Utente di HTML.it L'avatar di jcsnake
    Registrato dal
    Jun 2010
    Messaggi
    629
    Ciao, ti consiglio di fare un controllo lato client per verificare se la check è stata validata o meno, quindi ti consiglio di usare javascript, inserendo il controllo prima che la pagina invia il submit. Così ti eviti di toccare il php funzionante.

  3. #3
    puoi inserire nel form queste righe
    textarea name="textreg" id="textreg" cols="60" rows="10" readonly="readonly">
    regolamento.....
    </textarea>
    Ho letto ed accetto il regolamento <input type="checkbox" name="acc_reg" value="1" />

    e nel php puoi aggiungere:
    Codice PHP:
    $reg $_POST['acc_reg']; 
    if (
    $reg=="1") { 
    ricordati di inserire anche un } alla fine prima di ?>

    se vuoi gestire l'errore puoi inserire dopo }
    Codice PHP:
    else { 
    echo 
    "errore!!!!";


  4. #4
    Per questo genere di cose ti consiglio di usare il radio button:

    Codice PHP:

    <form method="post" action="<? $_SERVER['PHP_SELF']; ?>">
     Pesca <input type="radio" name="valore" value="pesca"/>
      Mela <input type="radio" name="valore" value="mela"/>
    <button type="submit" id="invia" value="go">invia</button>
    </form>

    <?php


    if (empty($_POST['valore'])){
    die (
    "Devi selezionare almeno una voce");
    }
    elseif (
    $_POST['valore'] == "pesca"){
        echo 
    "Hai selezionato pesca"
    } else {
        echo 
    "Hai selezionato mela"
    }
    ?>

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.