Hola. Tengo un formulario que valido de la manera que os expongo a continuación. Para simplificar me centraré en lo que me preocupa, el radiobutton. Resulta que cuando está vacío, el sistema devuelve el error de que está vacío para solucionarlo. Pero cuando lo mando con una opción seleccionada, en la validación ya no me sale el error evidentemente pero tampoco me sale el radiobutton activado (con el puntito vamos). os dejo aquí el tema:
Código PHP:
//si se ha pulsado el botón enviar
if(isset($_POST['submit']))
{
$opciones = trim( $_POST['opciones'] );
// validamos que se hayan enviado los campos
if (!empty($opciones))
{
echo "Todo está correcto";
}
//cierre de la aplicación para el caso correcto mediante el último }
//vamos ahora con el supuesto de que alguno/s de los campos no hayan sido introducidos correctamente. Los mensajes de error que se mostrarían
//serían los siguientes
else
{
echo "<div style=\"background-color: #FFFFFF; border: #746457 1px solid; padding: 6px;\"><span class=\"text1\">Se han detectado los siguientes errores. Por favor, corríjalos y reenvíe la información</span><br><br>";
if(empty($opciones)) {
echo "<span class=\"text1\">El campo Registro en Turismo no puede estar vacío</span><br>";
$opciones = $opciones."\" style=\"background-color: #FFFFF0\"";
}
echo "</div><br><br>";
//hasta aquí los mensajes de error. Mostramos nuevamente el formulario para que se corrija dichos defectos
echo "<form action=\"".$_SERVER['PHP_SELF']."\" method=\"POST\" name=\"f1\">";
<input type="radio" name="opciones" id="opcion1" value="opcion1" >
<label>Opción 1 </label>
<input type="radio" name="opciones" id="opcion2" value="opcion2" >
<label>Opción 2 </label>
echo "<br><input type=\"submit\" name=\"submit\" value=\"Enviar\">";
}
//Procedemos a cerrar el supuesto de que haya algún error en la cumplimentación de algún campo
}
//cierre de la aplicación para el caso incorrecto de los campos mediante el último }
//este último } corresponde a al inicial abierto para cuando se pulsaba el botón Enviar
}
///////////SI NO SE HA PULSADO EL BOTÓN ENVIAR///////////////////////////////////////////////////////
//si no se ha pulsado el botón enviar, en este caso se muestra el formulario con todos los campos
if(!isset($_POST['submit']))
{
echo "<form action=\"".$_SERVER['PHP_SELF']."\" method=\"POST\" name=\"f1\">";
<input type="radio" name="opciones" id="opcion1" value="opcion1" >
<label>Opción 1 </label>
<input type="radio" name="opciones" id="opcion2" value="opcion2" >
<label>Opción 2 </label>
";
echo "<br><input type="submit\" name=\"submit\" value=\"Siguiente\">";
}
}
Pues eso, al ir todo correcto, no me recoge el radiobutton que he seleccionado previamente. no me da el error de que está vacío, porque obviamente no lo está, me no me marca cuál es el que está señalado. Alguna idea¿?