• User Newbie

    Controllo campi radio

    Ciao a tutti, sono nuova del php ma dovendo fare un lavoretto semplice che prevede la verifica di un campo radio ho preso un pezzo di codice di esempio e me lo sono modificata.

    Per funzionare funziona, e' banalissimo, infatti se non selezioni nulla ti rimanda sulla stessa pagina lasciando in rosso la parola Genere, se selezioni qualcosa allora Genere diventa nero e ti propone il pulsante per passare alla pagina successiva.

    Potete suggerirmi come migliorare il codice e fare in modo che l'utente non debba cliccare 2 volte: la prima per la verifica e la seconda volta per procedere oltre?

    Insomma vorrei che se un utente seleziona subito qualcosa, cliccando passi alla seconda pagina immediatamente....

    Ciao e grazie!!

    <html><head><title>Verifica</title></head>

    <?PHP

    // ASSEGNO AI CAMPI IL VALORE UNCHECKED

    $male_status = 'unchecked';
    $female_status = 'unchecked';

    // ASSEGNO AI CAMPI IL VALORE CHECKED SE SELEZIONATI

    if (isset($_POST['Submit1'])) {

    $selected_radio = $_POST['gender'];

    if ($selected_radio == '1') {
    $male_status = 'checked';

    }
    else if ($selected_radio == '2') {
    $female_status = 'checked';
    }
    }

    // RIMANDO UTENTE STESSA PAGINA SE CAMPI NON SELEZIONATI

    if ($male_status == 'unchecked' and $female_status == 'unchecked' ){
    $form = 'radioButton.php';
    $invio = "Verifica se hai inserito i dati correttamente";
    }

    // RIMANDO UTENTE PAGINA SUCESSIVA SE I CAMPI SONO SELEZIONATI

    else {
    $form = 'radioButton2.php';
    $invio = "Dati corretti passa alla seconda pagina";
    }
    ?>

    <body>
    <FORM NAME ="form1" METHOD ="POST" ACTION ="<?PHP print $form ?>"><?PHP if ($male_status == 'unchecked' and $female_status == 'unchecked' ) { echo "<font color='red'>"; } ?> Genere:</font>
    <INPUT TYPE = 'Radio' Name ='gender' value= '1' <?PHP print $male_status; ?>>Male
    <INPUT TYPE = 'Radio' Name ='gender' value= '2' <?PHP print $female_status; ?>>Female
    <br /><br />
    <INPUT TYPE = "Submit" Name = "Submit1" VALUE = "<?PHP print $invio ?>">
    </FORM>
    </body></html>