Foros del Web » Programando para Internet » PHP »

LLenar un arrreglo al hacer click en un checkbox

Estas en el tema de LLenar un arrreglo al hacer click en un checkbox en el foro de PHP en Foros del Web. Hola foreros!!! Les cuento lo que deseo hacer: Tengo un formulario y uno de los objetos es un checkbox, quiero que cuando el usuario lo ...
  #1 (permalink)  
Antiguo 02/11/2003, 15:20
Avatar de Sarai  
Fecha de Ingreso: enero-2003
Ubicación: Alli donde Dios ha coloca
Mensajes: 91
Antigüedad: 21 años, 3 meses
Puntos: 0
LLenar un arrreglo al hacer click en un checkbox

Hola foreros!!!

Les cuento lo que deseo hacer:

Tengo un formulario y uno de los objetos es un checkbox, quiero que cuando el usuario lo seleccione, se ponga en un arreglo el valor del ID de la Base de Datos, todo esto lo tengo con un ciclo: while($row = mysql_fetch_assoc($rs)), ,

mi check en el onclick esta asi:
<input name="acep" type="checkbox" id="acep" value="" onClick="<? $arreglo[$i]=$row["id"];$i++;?>">

pero cuando envio el formulario a la pagina php, no me muestra nada, parece que no llena el arreglo.

Auxilio!!!!, alguien sabe como resolver esto.

Hasta pronto, saludos y Gracias
__________________
*** La ciencia lo es ÉL ***
  #2 (permalink)  
Antiguo 02/11/2003, 15:29
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Hola,

PHP se ejecuta en el servidor. La unica forma que tienes para ejecutar codigo PHP en funcion de un accion del usuario en el navegador es recargando la pagina.

Asi que en tu onclick deberias poner codigo javascript que mande recargar la pagina con los parametros adecuados.

Si no quieres que se recarge la pagina, debes usar javascript.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 02/11/2003, 15:31
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 6 meses
Puntos: 41
Lo que pasa es que "onClick" es una sentencia de JavaScript y se ejecuta de lado del cliente, o sea en el navegador. Para que te des cuenta, selecciona "ver código fuente" en tu navegador en la página del formulario. Verás que dice onClick="".. o sea que no hará nada con ese onClick (espero que se entienda).

Cluster publicó en las FAQ's del foro algún ejemplo de manejo de checkbox con PHP. Léelo a ver si te sirve de punto de partida.

Saludos
  #4 (permalink)  
Antiguo 02/11/2003, 15:32
Avatar de Sarai  
Fecha de Ingreso: enero-2003
Ubicación: Alli donde Dios ha coloca
Mensajes: 91
Antigüedad: 21 años, 3 meses
Puntos: 0
Llenar el arreglo

Hola Gracias!!!

Tambien soy aprendiz, como escribo esa funciòn en javascript que llene ese arreglo y luego como lo envio a la otra pagina para hacer mi proceso respectivo.

Gracias
__________________
*** La ciencia lo es ÉL ***
  #5 (permalink)  
Antiguo 02/11/2003, 15:36
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 6 meses
Puntos: 41
Ja, ja, ja... josemi.. te me adelantaste...

Sarai... acá te dejo el link con el post de las FAQ's que te mencioné:

http://www.forosdelweb.com/showthrea...710#post518710

No es exactamente lo que quieres, pero creo que si lo estudias un poco.. te puede ayudar... y cualquier duda... pregunta no más!

Saludos
  #6 (permalink)  
Antiguo 02/11/2003, 15:47
Avatar de Sarai  
Fecha de Ingreso: enero-2003
Ubicación: Alli donde Dios ha coloca
Mensajes: 91
Antigüedad: 21 años, 3 meses
Puntos: 0
Lo que necesitaba

Gracias a todos!!! es exactamente lo que necesitaba.

Thank Foreros, siempre atentos a todo.

Estamos en contacto
__________________
*** La ciencia lo es ÉL ***
  #7 (permalink)  
Antiguo 02/11/2003, 16:55
Avatar de Sarai  
Fecha de Ingreso: enero-2003
Ubicación: Alli donde Dios ha coloca
Mensajes: 91
Antigüedad: 21 años, 3 meses
Puntos: 0
Hola en el Faq's dice qeu si hago esto no necesito hacer un ciclo para borrar todos los id que marque en el checkbox, pero solo me borra uno, que será, o si necesito hacer el ciclo?
$lista='('.implode(',',$_POST['acep']).')';
mysql_query("DELETE FROM foro WHERE id IN(".$lista.")");
__________________
*** La ciencia lo es ÉL ***
  #8 (permalink)  
Antiguo 02/11/2003, 17:07
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 6 meses
Puntos: 41
Debería borrar todos los seleccionados... para verificar que está todo bien escrito haz un:

echo $lista;

Y revisa que coincidan con los de tu bd

Saludos

PD:Editado lo siguiente:
Bueno, este mensaje es una estupidez, porque está jalando los nombres dela base de datos, así que de todas maneras van a coincidir... perdón, pero ya descubrí el error. Lo puse en un post más abajo

Última edición por jpinedo; 02/11/2003 a las 19:15
  #9 (permalink)  
Antiguo 02/11/2003, 17:18
Avatar de Sarai  
Fecha de Ingreso: enero-2003
Ubicación: Alli donde Dios ha coloca
Mensajes: 91
Antigüedad: 21 años, 3 meses
Puntos: 0
Ya resolvi

Gracias decidi, hacer un ciclo ForEach y dentro de este coloque el SQL.

Otra preguntita, tengo dos boton en disabled, y los mismos checkbox de ahora, ahora quiero que cuando seleccione un check se activen los DOS botones, lo hace pero con solo uno de los botones, como le digo al Onclick del Checkbox que ative a los Botones.

Gracias de nuevo.
__________________
*** La ciencia lo es ÉL ***
  #10 (permalink)  
Antiguo 02/11/2003, 17:29
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 6 meses
Puntos: 41
Bueno... eso es puro JavaScript y hay un foro especial para eso... de todos modos creo que te puede servir esto:

http://www.forosdelweb.com/showthrea...light=checkbox

Saludos
  #11 (permalink)  
Antiguo 02/11/2003, 17:44
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 6 meses
Puntos: 41
No necesitas hacer un foreach... es que el ejemplo de Cluster tiene un pequeño error... Sólo hay unos paréntesis de más. La línea debe quedar así:

$lista=implode(',',$_POST['acep']);

Saludos

PD:Ya le reporté esto a Cluster para que lo edite en las FAQ's.

Última edición por jpinedo; 02/11/2003 a las 19:22
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 03:18.