Foros del Web » Programando para Internet » PHP »

Actualizar dato de bd con checkbox

Estas en el tema de Actualizar dato de bd con checkbox en el foro de PHP en Foros del Web. Bueno tengo un registro el cual hay un par de checkbox y todo guarda bien, despues en una pagina muestro lo que se ha guardado ...
  #1 (permalink)  
Antiguo 26/03/2011, 22:56
 
Fecha de Ingreso: diciembre-2010
Mensajes: 40
Antigüedad: 13 años, 4 meses
Puntos: 0
Actualizar dato de bd con checkbox

Bueno tengo un registro el cual hay un par de checkbox y todo guarda bien, despues en una pagina muestro lo que se ha guardado pero despliego en los mismos checkbox si fueron seleccionados o no todo bien hasta ahi.

Ahora lo que no he podido hacer es que si le quitan la seleccion a ese checkbox que se guarda en la bd, aqui dejo mi codigo que tengo hasta el momento. Saludos


Código PHP:
<label> <strong>Color: </strong></label>
   <label>  <?php if ($row["color"]=="rojo"
        { 
        
$checked 'checked';
        
$unchecked 'unchecked';
         
        echo 
"<td><input name='color' type='checkbox' value='rojo' ".$checked.">"
              
                       } 
                       
                       if(
$row["color"]=="")
                       
                       {
                                                      
          echo 
"<td> <input name='color' type='checkbox' value='' ".$unchecked.">"
                       
                       }
        
        
?> 
       </label>
  #2 (permalink)  
Antiguo 26/03/2011, 23:08
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Actualizar dato de bd con checkbox

Se pueden seleccionar varios colores por medio de sus correspondientes checkboxes? Si es asi, tienes un problema, porque estarias repitiendo el mismo nombre para todos ellos.

Si se trata de un solo color, te sobran varios if's:
Código PHP:
Ver original
  1. // Valor del color:
  2. $color_value = $row['color'];
  3. // Checked o no? (asignacion ternaria)... se requiere el atributo solo cuando esta marcado
  4. $checked = ($row['color'] == '') ? '' : ' checked="checked"';
  5. echo "<td><input type=\"checkbox\" name=\"color\" value=\"$color_value\"$checked /> Nombre del color</td>";
__________________
- León, Guanajuato
- GV-Foto
  #3 (permalink)  
Antiguo 27/03/2011, 00:11
 
Fecha de Ingreso: diciembre-2010
Mensajes: 40
Antigüedad: 13 años, 4 meses
Puntos: 0
Respuesta: Actualizar dato de bd con checkbox

Voy a checar como me comentas gracias por la respuesta.
  #4 (permalink)  
Antiguo 28/03/2011, 02:04
 
Fecha de Ingreso: diciembre-2010
Mensajes: 40
Antigüedad: 13 años, 4 meses
Puntos: 0
Respuesta: Actualizar dato de bd con checkbox

Gracias por la ayuda amigo pero no logre avanzar, un ejemplo muy claro pues es nuestro querido facebook he aqui la imagen

[URL=http://img651.imageshack.us/i/pruebajw.png/][IMG]http://img651.imageshack.us/img651/5442/pruebajw.th.png[/IMG][/URL]

Yo en un formulario tengo unos checkbox los cuales seleccionan de acuerdo a cada uno todo ok hasta ahi, despues tengo una pagina donde me muestra todos los campos de cada usuario con su respectiva info guardada en la base de datos y vuelvo a poner los mismos checkbox pero ahora aparecen los que fueron seleccionados por el usuario lo cual el value para ser seleccionado era si y para no ser seleccionado quedaba en nulo.

Puedo mostrar cuales si fueron seleccionados y cuales no hasta ahi estoy bien, ahora en lo que me he atorado es si el usuario quiere editar esos checkbox y por ejemplo uno que este seleccionado quitarselo y dejarlo sin seleccion como se guardaria eso, esa es mi gran pregunta.

aqui mi codigo nuevamente
Código PHP:
<label> <strong>Color: </strong></label> 
   <label>  <?php if ($row["color"]=="rojo")  
        {  
        
$checked 'checked'
        
$unchecked 'unchecked'
          
        echo 
"<td><input name='color' type='checkbox' value='rojo' ".$checked.">";  
               
                       }  
                        
                       if(
$row["color"]==""
                        
                       { 
                                                       
          echo 
"<td> <input name='color' type='checkbox' value='' ".$unchecked.">";  
                        
                       } 
         
        
?>  
       </label>

Etiquetas: bd, checkbox, dato
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:07.