PHP - Checkbox = ""

 
Vista:
sin imagen de perfil
Val: 16
Ha aumentado su posición en 10 puestos en PHP (en relación al último mes)
Gráfica de PHP

Checkbox = ""

Publicado por fran (6 intervenciones) el 13/11/2020 19:09:34
Perdón por volver a molestar, pero llevo todo el día mirando en el foro y probando cosas y no doy con la tecla y me voy a volver loco.
Explico:
Tengo un form con 1 checkbox.

* Si marco y guardo, me recoge la variable TRUE
*si DESMARCO y guardo me recoge que es FALSE

Pero!!!!! si entro al formulario y el check esta marcado (por que lo recogió true de mysql) , cuando le doy a guardar los cambios SIN tocar el check, el valor que me muestra es "" en vez de TRUE que es como esta marcado el check.
¿POR QUE? pues por eso os molesto a vosotros que sois los maestros por que no hay manera de encontrar el fallo.

Este es el código en el formulario formulario.php podemos llamarlo

1
2
3
4
5
6
7
8
9
10
11
echo "Marcar Si se a perdido la Mascota ";
	//VALUE 1 SERIA ChECKEADO , VALUE 2 SERIA NO CHEKEADO
if ( $row[12] == "true" )  {
	  ?> <input type="checkbox" name="active[]" value="1"; checked></td> <?php
 
      }
		else
    {
   ?>   <input type="checkbox" name="active[]" value="2"; ></td>  <?php
 
      }


Este el código del formulario de Actualizar.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
$checked = (isset($_POST['active']))?$_POST['active']:'';
 
 
if (is_array($checked) || is_object($checked))
{
 
foreach($checked as $checket_select) {
 
	}
}
 
	if ($checket_select =='2'){
 
		$chk_valor = "true";
 
}
 
	if ($checket_select == '') {
 
	$chk_valor = 'false';
 
}



Lo raro es que cuando me da valor = "" me suelta el NOTICE , dentro de la consulta UPDATE
1
Notice: Undefined variable: chk_valor
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 16
Ha aumentado su posición en 10 puestos en PHP (en relación al último mes)
Gráfica de PHP

Checkbox = ""

Publicado por fran (6 intervenciones) el 13/11/2020 19:49:15
Lo he solucionado cambiando el orden del código yo tenia el siguiente orden:

Checks.

Variables restantes del formulario tipo;

1
2
$tipo = (isset($_POST['tipo']))?$_POST['tipo']:'';
$especie = $_POST["especie"];

y luego el UPDATE.

Lo que he hecho a sido meter TODO el update dentro de cada IF CHECKED SELECT y aunque el valor me sigue devolviendo "" , ya no me da error y tampoco me ELIMINA el true de la base de datos

Ni idea de por que pero me funciona :/
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar