Foros del Web » Programando para Internet » PHP »

No me funciona el foreach para eliminar por check

Estas en el tema de No me funciona el foreach para eliminar por check en el foro de PHP en Foros del Web. Hola, a ver si ven qué pasa con este script... el foreach está asi en todos lso lados que encontré pero cuando lo ejecuto me ...
  #1 (permalink)  
Antiguo 01/03/2010, 19:02
 
Fecha de Ingreso: agosto-2009
Ubicación: Al fondo a la derecha
Mensajes: 308
Antigüedad: 15 años, 3 meses
Puntos: 6
No me funciona el foreach para eliminar por check

Hola, a ver si ven qué pasa con este script... el foreach está asi en todos lso lados que encontré pero cuando lo ejecuto me tira error de que el arument $_POST en el foreach no es válido...

empezamos: ya se conectó a la db

Código PHP:
<?php
$SQL 
mysql_query("SELECT name, id FROM users");
?>
<form action="" method="post" name="Send">
<?php
while($DATA mysql_fetch_assoc($SQL))
{
?>
<input type="checkbox" name="Check[<?php echo $DATA[id];?>]"/><?php echo $DATA[name]?><BR />
<?php
}

foreach (
$_POST['Check'] as $id)
{

if (isset(
$_POST['Sender']))
{
mysql_query("DELETE FROM users WHERE id=$id");
}
else
{
}

}
?>
<input name="Sender" type="submit" value="Eliminar seleccionados" />
</form>

Esto supuestamente debería eliminar los registros seleccionados pero no hace nada.
El array $_POST del foreach devuelve en cada caso "on" teoricamente debería devolver el id de cada registro...

Gracias!
__________________
Abre tu mente: Index no signigica index, significa índice

Última edición por iLeaz; 01/03/2010 a las 19:48
  #2 (permalink)  
Antiguo 01/03/2010, 19:23
Avatar de jackson666  
Fecha de Ingreso: noviembre-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 1.971
Antigüedad: 15 años
Puntos: 65
Respuesta: No me funciona el foreach para eliminar por check

Que contiene la variable $_POST['Check'] ? Un array? Porque sino es obvio que el argumento del foreach esta mal... estarias iternado un string!
__________________
HV Studio
Diseño y desarrollo web
  #3 (permalink)  
Antiguo 01/03/2010, 19:31
 
Fecha de Ingreso: agosto-2009
Ubicación: Al fondo a la derecha
Mensajes: 308
Antigüedad: 15 años, 3 meses
Puntos: 6
Respuesta: No me funciona el foreach para eliminar por check

Bueno, parece que el error lo tiraba simplemente porque si no se envio el formulario no existe el POST y por l otanto no hay nada jeje...

pero igualmente, el script está mal por el hecho de que no elimina...

la variable $_POST['Check'] solo me devuelve "on"


LISTO YA FUNCIONA, AUNQUE PARA VER LA ACCION EN EL ULTIMO REGISTRO HAY QUE ACTUALIZAR LA PÁGINA, lo que no me permite poner un mensaje tipo "se han borrado tantos registros..."
__________________
Abre tu mente: Index no signigica index, significa índice

Última edición por iLeaz; 01/03/2010 a las 20:09

Etiquetas: eliminar, foreach
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 18:05.