Al igual que los botones de opción, las casillas de verificación se utilizan para ofrecer a los visitantes una variedad de opciones. Mientras que los botones de opción restringen a los usuarios a una sola opción, puede seleccionar más de una opción con las casillas de verificación.
Aquí hay una página que pide a los usuarios que elijan qué libros de texto quieren pedir:
Como puede ver, se pueden seleccionar cinco elementos. Por el momento, solo se eligen tres. Cuando se hace clic en el botón, usted, como programador, desea hacer al menos dos cosas: registrar qué casillas de verificación se marcaron y hacer que PHP "recuerde" qué elementos se eligieron, en caso de errores.
No desea que las marcas desaparezcan de las casillas de verificación si el usuario no ha introducido otros detalles incorrectamente. Vimos con los botones de radio que esto puede implicar una codificación complicada. Lo mismo ocurre con las casillas de verificación. Echemos un vistazo a una solución al problema.
Debido a que el código es un poco más complejo, lo hemos incluido en los archivos que descargó. El guión que estás buscando es checkboxes.php, y está en el guiones carpeta. Ábrelo y echa un vistazo al código. Aquí está en su totalidad, si desea copiarlo y pegarlo:
El script de casillas de verificación
Tenga en cuenta una cosa sobre los elementos de la casilla de verificación HTML: todos tienen diferentes valores de NOMBRE (ch1, ch2 ch3, etc.). Cuando codificamos para los botones de radio, les dimos el mismo NOMBRE a los botones. Eso es porque solo se puede seleccionar una opción con los botones de opción. Debido a que el usuario puede seleccionar más de una opción con las casillas de verificación, tiene sentido darles diferentes valores de NOMBRE y tratarlos como entidades separadas (pero algunos abogan por tratarlos como botones de opción).
En su código PHP, la técnica consiste en comprobar si cada elemento de la casilla de verificación se ha marcado o no. Es más o menos lo mismo que para los botones de radio. Primero configuramos cinco variables y las configuramos sin marcar, tal como lo hicimos antes:
$ ch1 = 'sin marcar';
$ ch2 = 'sin marcar';
$ ch3 = 'sin marcar';
$ ch4 = 'sin marcar';
$ ch5 = 'sin marcar';
Lo siguiente es lo mismo también: verifique si se hizo clic en el botón Enviar:
if (isset ($ _ POST['Submit1'])) {
}
Dentro de este código, sin embargo, tenemos otro Está establecido( ) función:
if (isset ($ _ POST['ch1'])) {
}
Esta vez, estamos verificando si se estableció una casilla de verificación. Necesitamos hacer esto debido a una peculiaridad de las casillas de verificación HTML. Si no están marcados, no tienen ningún valor, por lo que no se devuelve nada. Si prueba el código sin comprobar si las casillas de verificación están configuradas, tendrá que lidiar con muchos errores "Indefinidos".
Sin embargo, si la casilla de verificación está marcada, devolverá un valor. Y entonces la función isset () será verdadera. Si la función isset () es verdadera, entonces nuestro código dentro de la instrucción if se ejecuta:
if ($ ch1 == 'net') {
$ ch1 = 'comprobado';
}
¡Esta es otra declaración If! Pero solo estamos verificando el valor de una variable. Necesitamos saber qué hay dentro. Este dice: "Si el valor dentro de la variable llamada $ ch1 es 'neto'luego ejecute algún código.
El código que necesitamos ejecutar es poner el texto 'comprobado'dentro de la variable llamada $ ch1. ¿El resto de las declaraciones if son iguales? uno para cada casilla de verificación del formulario.
Lo último que debemos hacer es imprimir el valor de la variable en el formulario HTML:
> Visual Basic .NET
Nuevamente, este es el mismo código que vio con los botones de radio. La parte de PHP es:
PHP print $ ch1; ?>
Entonces solo estamos imprimiendo lo que está dentro de la variable llamada $ ch1. Esto será "desenfrenado" o "comprobado",
Hay otras soluciones para las casillas de verificación, ¡pero ninguna parece simple! El punto aquí, sin embargo, es que para hacer el trabajo usamos lógica condicional.
Cómo validar casillas de verificación usando JavaScript
Sin embargo, otra forma de lidiar con las casillas de verificación es con algo de JavaScript. El siguiente guión nos lo envió Tapan Bhanot. Utiliza JavaScript para validar las casillas de verificación antes de enviarlo a un script PHP. Tenga en cuenta que todas las casillas de verificación tienen el mismo nombre en el formulario HTML y que se publica en un script PHP llamado step2.php:
Ver el guión de Tapan (se abre en una nueva ventana)
Aprenderá más sobre cómo manejar formularios HTML a medida que avancemos. Por ahora, dejaremos el tema y continuaremos. Sin embargo, es un viaje un poco accidentado en la siguiente parte, ¡ya que estamos abordando bucles!
<- Atrás una página | Pasar a la siguiente parte ->
Volver a la página de contenido de PHP
