• User Attivo

    Form - assegnare valore a check vuoto

    Buongiorno.

    Ho un form che, una volta compilato, richiama una pagina php la quale genera ed invia una email con i dati raccolti.

    All'interno del form è presente un check che è selezionato di default ed ha come valore "si".

    Vorrei fare in modo che nel caso in cui il check venga deselezionato il valore divenga "no".

    Il codice che dovrebbe fare questo controllo è:

    if(!empty($_POST["showMail"]) ) {
    $catalogo = 'no';
    } else {
    $catalogo = $_POST["showMail"];
    }

    Disgraziatamente (per me) non funziona, nel senso che se il check viene deselezionato il valore è nullo mentre dovrebbe essere "no".
    Nel caso in cui il check rimanga selezionato il valore è correttamente "si".

    Non essendo un programmatore non sono in grado di capire dove possa essere l'errore.

    Qualcuno mi può aiutare?

    Grazie.


  • Super User

    Credo che il problema stia nel fatto che se il check è deselezionato non risulta vuoto, ma nullo.
    Fai cosi:
    <input type="checkbox" name="showMail" value="si">

    [php]if($_POST["showMail"]=="") {
    $catalogo = 'no';
    } else {
    $catalogo = $_POST["showMail"];
    }
    [/php]


  • User Attivo

    Perfetto!

    Grazie mille.