elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
28 Mayo 2012, 13:10  


Tema destacado: Últimos eventos sobre seguridad/inseguridad

+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP
| | | |-+  como le ago para modificar varios checkbox seleccionados
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: como le ago para modificar varios checkbox seleccionados  (Leído 2,413 veces)
RedZer


Desconectado Desconectado

Mensajes: 654



Ver Perfil
como le ago para modificar varios checkbox seleccionados
« en: 29 Octubre 2010, 00:52 »

bueno miren tengo una consulta en la cual muestro los resultados con un while a ladito de cada resultado que se muestra le anexo un check box para eso yo tengo un campo en una tabla que se llama revisado y cada ves que se palomie un check box se pondra un 1 en se campo de mi tabla llamado revisado, eso lo ago yo con una modificacion ahora lo que quiero hacer es que cuando se deselccione un checkbox me modifique el valor en la tabla en el campo seleccionado que en ves de 1 me ponga un cero
mi codigo en donde genero la consulta sql para mostrar los registros y saber si ya tiene un valor asignado ese campo es el siguiente

conectar();
$result=mysql_query("select * FROM jqcalendar where Subject='$ficha-$codigo'");
desconectar();
while ($row=mysql_fetch_array($result))
{

echo"
<tr>
<td>$contador</td>

<td>$row[1]</td>
<td>$row[4]</td>
<td>$row[5]</td>

<td>$row[2]</td>";
if($row[7]==1){ 
echo"<td><input name=lista[] type=checkbox value=$row[0] checked=checked/></td>";
} else{
    echo"<td><input name=lista[] type=checkbox value=$row[0]  /></td>";

}



y el que me resibe y ase modificacion es este


<?php 
include("conexion.php"); 
session_start();
if(count($_POST['lista'])) { 
//incluir conexión a la bdd 

foreach ($_POST['lista'] as $v) {
    conectar();
mysql_query("UPDATE jqcalendar  SET asistencia='1' where Id='$v' ");
    desconectar();
     
         }     


}else {
         
//aqui es donde estoy intentando hacer que si se deselecciona un checkbox que //ya estaba seleccionado me cambie el valor a cero pero no me sale
conectar();
mysql_query("UPDATE jqcalendar  SET asistencia='0' where Id='$v' ");
    desconectar();
     

}

?>


En línea

Nacido y criado entre gente que enseño a pensar antes de creer a ciegas, Todo me causa curiosidad en el mundo
drvy | BSM


Desconectado Desconectado

Mensajes: 1.129


badstupidmonkey


Ver Perfil WWW
Re: como le ago para modificar varios checkbox seleccionados
« Respuesta #1 en: 10 Noviembre 2010, 01:08 »

Resulta que si ningun checkbox esta selecionado no se envia ningun dato por lo tanto el $_POST['lista'] no se define y no contendra nada.
Lo unico que se me ocurre es que pongas un texbox hidden que se encargue de guardar las ids.
quedaria mas o menos asi

codigo para lista
Código
<?php
conectar();
$result=mysql_query("select * FROM jqcalendar where Subject='$ficha-$codigo'");
desconectar();
while ($row=mysql_fetch_array($result))
{
 
echo"
<tr>
<td>$contador</td>
 
<td>$row[1]</td>
<td>$row[4]</td>
<td>$row[5]</td>
 
<td>$row[2]</td>"
;
if($row[7]==1){
echo '<td><input name="lista[]" type="checkbox" value="'.$row[0].'" checked="checked"/>';
echo '<input type="hidden" name="listah[]" value="'.$row[0].' checked="cheked"/></td>';
} else{
echo"<td><input name=lista[] type=checkbox value=$row[0]  />";
echo '<input type="hidden" name="listah[]" value="'.$row[0].' checked="cheked"/></td>';
}
}  
?>

codigo que modifica
Código
<?php  
include("conexion.php");  
session_start();
conectar();  
if(isset($_POST['lista'])) {  
//incluir conexión a la bdd  
 
foreach ($_POST['lista'] as $v) { mysql_query("UPDATE jqcalendar  SET asistencia='1' where Id='$v' ");}      
} else {
//aqui es donde estoy intentando hacer que si se deselecciona un checkbox que
// ya estaba seleccionado me cambie el valor a cero pero no me sale
foreach ($_POST['listah'] as $v) { mysql_query("UPDATE jqcalendar  SET asistencia='0' where Id='$v' ");}
desconectar();
?>
 


Saludos


« Última modificación: 10 Noviembre 2010, 05:02 por drvy | BSM » En línea
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines