Foros del Web » Programando para Internet » PHP »

Problema con foreach

Estas en el tema de Problema con foreach en el foro de PHP en Foros del Web. Buenas dias, tengo un lista de checkbox que se crean dinamicamente segun una consulta sql asi. echo"<table>"; while ($rowEmp = mysql_fetch_assoc($resEmp)){ echo"<tr>"; echo"<td><input type='checkbox' name='check[]' ...
  #1 (permalink)  
Antiguo 17/09/2010, 10:48
 
Fecha de Ingreso: enero-2010
Mensajes: 247
Antigüedad: 14 años, 3 meses
Puntos: 2
Problema con foreach

Buenas dias, tengo un lista de checkbox que se crean dinamicamente segun una consulta sql asi.

echo"<table>";
while ($rowEmp = mysql_fetch_assoc($resEmp)){
echo"<tr>";
echo"<td><input type='checkbox' name='check[]' value=' ".$rowEmp['CODIGO']." '></td> <td>".$rowEmp['NOMBRE']."</td></tr>";
}
echo"</table>";

hasta aqui va perfecto, luego paso los valores del formulario por metodo post para guardar los check que esten seleccionados.

asi.


$chequed=$_POST['check'];

$conexion = mysql_connect("localhost", "root", "ad");
mysql_select_db("BD", $conexion);

foreach ($chequed as $valor){
$queEmp = "insert into TABLA (codigo,nombre) values($valor,1)";
$resEmp = mysql_query($queEmp, $conexion) or die(mysql_error());
}

echo"<sript>alert('registros guardados');</script>";

los registro me los guarda bien en la base de datos, pero el problema es que no me muestra el mensaje.

si hago solo una consulta de los check que estan seleccionados,

foreach ($chequed as $valor){
echo"dato: ".$valor."<br />";
}

echo"<sript>alert('registros guardados');</script>";

me mustra el siguiente resultado

dato: 1
dato: 3
dato: 5
dato: 7
dato: ARRAY

los 4 primeros resultados son correctos pero el "ARRAY" no se de donde lo saca, creo que alli esta el problema, porque he probado creando un array y usando el ciclo foreach y lo hace bien, pero cuando los datos son consultados de la bd viene el problema.


gracias.
  #2 (permalink)  
Antiguo 17/09/2010, 12: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: Problema con foreach

var_dump($_POST['check']);

Eso te mostrara como esta compuesto el valor recibido y te dara una pista sobre lo que tengas que hacer.
__________________
- León, Guanajuato
- GV-Foto
  #3 (permalink)  
Antiguo 17/09/2010, 12:11
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 18 años, 10 meses
Puntos: 88
Respuesta: Problema con foreach

1.- para el mensaje, complementa <sript> falta al c, y
2.- haz un
Código PHP:
Ver original
  1. var_dump($chequed);
para que veas que contiene ese último array y darte una idea.

saludos.
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #4 (permalink)  
Antiguo 17/09/2010, 12:38
 
Fecha de Ingreso: enero-2010
Mensajes: 247
Antigüedad: 14 años, 3 meses
Puntos: 2
Respuesta: Problema con foreach

si el problema de script solo fue un problema de transcripcion ya que en el documento html lo tengo bien, pero como funciona el var_dump(); el me envia un mensaje ? o como lo uso, he colocado el var_dump($checked); donde checqued es un variable donde he pasado el array.

gracias
  #5 (permalink)  
Antiguo 17/09/2010, 15:54
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 18 años, 10 meses
Puntos: 88
Respuesta: Problema con foreach

lo que dijo el compañero triby y lo que te dije del var_dump es lo mismo, si usas el del compañero puedes ponerlo comenzando el php, pero si usas el que te dije, tendrá que ser después de la asignación
Código PHP:
Ver original
  1. $chequed=$_POST['check'];
el var_dump te mostrará eñ contenido detallado de el array, con esto sabras el contenido del último array que mencionas(el de la posición 5). saludos
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.

Etiquetas: 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 06:19.