- Home
- Categorie
- Coding e Sistemistica
- Coding
- Controllo campi radio
-
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>