Ver Mensaje Individual
  #3 (permalink)  
Antiguo 29/10/2011, 19:51
Avatar de leonardomontilla
leonardomontilla
 
Fecha de Ingreso: octubre-2011
Ubicación: Caracas
Mensajes: 6
Antigüedad: 13 años
Puntos: 0
Respuesta: Validar radiobutton y mantener el seleccionado

Las casillas de verificación (checkbox) y los botones de radio (radio) son enviados por el formulario únicamente si son activados (atributo checked) Esto significa que PHP no recibirá la variable correspondiente al campo si éste no es seleccionado

Ejemplo (con casilla)
...
<input type="checkbox" name="casilla" value="1" /> Una casilla
...

Nota que el campo anterior no tiene el atributo "checked" por lo que no está seleccionado de manera predeterminada. Si el usuario no lo selecciona, no PHP no recibirá la varible $_POST['casilla'] (o $_GET['casilla'], según el caso) y por consiguiente la siguiente sentencia dará error:

if($_POST['casilla'] == '1') {
// esto da error pues $_POST['casilla'] no está definida
}

La manera de comprobar este tipo de campos es con isset():

if( isset($_POST['casilla']) ) {
// el campo 'casilla' fue seleccionado
} else {
// el campo 'casilla' no fue seleccionado
}

También puedes usar el operador ternario (mi favorito para este tipo de casos)

$casilla = isset($_POST['casilla']) ? $_POST['casilla'] : '0';

Lo mismo con los radiobuttons...

Espero te halla servido