Ver Mensaje Individual
  #1 (permalink)  
Antiguo 26/02/2012, 20:54
RabidFish
 
Fecha de Ingreso: julio-2008
Ubicación: Córdoba, Argentina
Mensajes: 266
Antigüedad: 16 años, 5 meses
Puntos: 26
Duda al momento de validar formulario

Hola a todos.

Estoy haciendo un formulario algo complejo (al menos a comparación a un típico formulario de contacto) que incluye varios elementos, como inputs de tipo radio y selects. Yo realizo las validaciones de todos los campos en el mismo archivo PHP donde está el formulario, y el formulario llama a su mismo archivo cuando se envía por POST, con esto puedo mostrar todos los datos que ingresó el usuario en los campos para que no tenga que volver a cargarlos y además puedo mostrar arriba de todo el mensaje de error específico. Supongo que es la mejor manera.
Con los elementos que mencionaba, es decir los que son distintos a los input de tipo text, hago algo así:

Código PHP:
$sexo 0// Opción por defecto cuando nunca se envió el formulario.

if(isset($_POST['enviar_formulario'])) {
    
$sexo $_POST['sexo'];  // Cambio la opción por defecto por la seleccionada.

Y más abajo, en el mismo archivo PHP:
Código HTML:
<input type="radio" name="sexo" value="0"<?php if($sexo == 0) {echo ' checked="checked"';} ?> /> Masculino
<input type="radio" name="sexo" value="1"<?php if($sexo == 1) {echo ' checked="checked"';} ?> /> Femenino
De esta forma, cuando el usuario envía el formulairo y se produce un error, la opción que eligió está seleccionada, en vez de la que hay por defecto. Lo que me pregunto es: ¿esta manera de hacerlo es correcta? ¿No es redundante hacer dos veces la mismo pregunta (si sexo es igual a 0 y si es igual a 1)? ¿Qué otras alternativas hay?

Un saludo.