Foros del Web » Programando para Internet » PHP »

Ayuda con checkbox al insertar en mysql

Estas en el tema de Ayuda con checkbox al insertar en mysql en el foro de PHP en Foros del Web. Buenas tardes, un saludo, resulta que estoy haciendo mi proyecto de grado en php 5, y he tenido uno que otro problemita, aunque parecen fáciles ...
  #1 (permalink)  
Antiguo 10/08/2010, 12:37
 
Fecha de Ingreso: agosto-2010
Mensajes: 5
Antigüedad: 13 años, 9 meses
Puntos: 0
Ayuda con checkbox al insertar en mysql

Buenas tardes, un saludo, resulta que estoy haciendo mi proyecto de grado en php 5, y he tenido uno que otro problemita, aunque parecen fáciles para mi no lo ha sido, soy algo novata, y quisiera pedirles una asesoria.

Bueno, tengo varios checkbox en mi formulario, manejo bastantes, aqui va un ejemplo de como los tengo:

<html>
<head>

Seleccione las dificultades que presenta :
<br><br>

<INPUT TYPE="Checkbox" NAME="Escritura" VALUE="Si">
Escritura

<INPUT TYPE="Checkbox" NAME="Comunicacion" VALUE="Si">
Comunicación

<INPUT TYPE="Checkbox" NAME="Lectura" VALUE="Si">
Lectura

<INPUT TYPE="Checkbox" NAME="Matematicas" VALUE="Si">
Matemáticas

<INPUT TYPE="Checkbox" NAME="Vision" VALUE="Si">
Visión

<INPUT TYPE="Checkbox" NAME="Audicion" VALUE="Si">
Audición

<INPUT TYPE="Checkbox" NAME="Habla" VALUE="Si">
Habla

<INPUT TYPE="Checkbox" NAME="Aseo" VALUE="Si">
Aseo
<br>
<INPUT TYPE="Checkbox" NAME="Atencion" VALUE="Si">
Atención


<INPUT TYPE="Checkbox" NAME="Actividad" VALUE="Si">
Actividad

<INPUT TYPE="Checkbox" NAME="Asistencia" VALUE="Si">
Asistencia


<INPUT TYPE="Checkbox" NAME="Habitos" VALUE="Si">
Hábitos

<INPUT TYPE="Checkbox" NAME="Otros" VALUE="Si">
Otros

Los anteriores checkbox los tengo en una tabla de mi base de datos, se llama dificultades. y aparte tengo una tabla llamada estudiante, con varios campos, mi problema es que no se si debo crear mas campos en la tabla estudiante con cada checkbox q tenga para que quede almacenado en el momento de seleccionar, no sabria q instruccion darle en el insert en el momento de llevarlo a mysql. agradeceria una ayuda y perdon por la ignorancia.
  #2 (permalink)  
Antiguo 10/08/2010, 12:44
Avatar de _ssx  
Fecha de Ingreso: mayo-2003
Ubicación: mX
Mensajes: 683
Antigüedad: 21 años
Puntos: 60
Respuesta: Ayuda con checkbox al insertar en mysql

Hola

Podrías

1.- Crear una nueva tabla llamada dificultades_estudiante donde relaciones los id's de las dificultades y el id del estudiante si tienes una relación Normalizada.

2. Crear la misma tabla y solo agregarle las habilidades y el id del estudiante

3. Unir todas las habilidades con una "coma" " , " y guardarlos en un campo.
Ej: habilidad,habilidad2,habilidad3. y para recuperarlos usar explode();
__________________
Escribe tu código de forma que refleje, y saque a relucir,lo mejor de tu carácter personal
www.oscararzola.com/blog
Principios de un programador
  #3 (permalink)  
Antiguo 10/08/2010, 13:18
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Tema movido desde PHP orientado a objetos a PHP
  #4 (permalink)  
Antiguo 10/08/2010, 13:38
 
Fecha de Ingreso: agosto-2010
Mensajes: 5
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Ayuda con checkbox al insertar en mysql

Gracias _SSX, osea que usando el explode seria de esta manera?

$dificultades = "Escritura Lectura Comunicacion Matematicas ...";
$dif = explode(" ", $dificultades);
$dif[0]; // escritura
$dif[1]; // lectura
$dif[2]; // Comunicacion
$dif[3]; // Matematicas...
  #5 (permalink)  
Antiguo 10/08/2010, 13:57
Avatar de _ssx  
Fecha de Ingreso: mayo-2003
Ubicación: mX
Mensajes: 683
Antigüedad: 21 años
Puntos: 60
Respuesta: Ayuda con checkbox al insertar en mysql

Así es :) aunque te recomiendo que sea en lugar de un espacio una "coma" o algún otro carácter por si después tienes dos palabras en una misma característica :)
__________________
Escribe tu código de forma que refleje, y saque a relucir,lo mejor de tu carácter personal
www.oscararzola.com/blog
Principios de un programador
  #6 (permalink)  
Antiguo 10/08/2010, 14:01
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 14 años, 7 meses
Puntos: 214
Respuesta: Ayuda con checkbox al insertar en mysql

hola julieta_90
si quisieras en algún punto algo más elaborado,
podrías hacer uso de arrays para insertar tantas
dificultades como checkbox sean seleccionados
(y dependiendo obviamente del mer de la bd y las reglas que se quieran)

tal vez por el tiempo de entrega o algo no puedas
cambiarlo, o bueno, no se, pero si a futuro necesitas algo
distinto pues lo que te comento es buena opción

te dejo esto por si quieres darle una mirada
saludos
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com
  #7 (permalink)  
Antiguo 10/08/2010, 14:09
 
Fecha de Ingreso: agosto-2010
Mensajes: 5
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Ayuda con checkbox al insertar en mysql

oye perdon por la preguntadera, pero en el insert como se estableceria; primero irian los campos del estudiante:
insert into (id, nombre, apellido,....., id_dif) values ('id', 'nombre', 'apellido',....., 'id_dif')?
o aparte
select id_dif where id_dif=1???
no se como iria
  #8 (permalink)  
Antiguo 10/08/2010, 14:30
Avatar de _ssx  
Fecha de Ingreso: mayo-2003
Ubicación: mX
Mensajes: 683
Antigüedad: 21 años
Puntos: 60
Respuesta: Ayuda con checkbox al insertar en mysql

Ya no entendi como fue la solución que escogiste o mas bien ya no se bien que es lo que quieres hacer
__________________
Escribe tu código de forma que refleje, y saque a relucir,lo mejor de tu carácter personal
www.oscararzola.com/blog
Principios de un programador
  #9 (permalink)  
Antiguo 10/08/2010, 14:41
 
Fecha de Ingreso: agosto-2010
Mensajes: 5
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Ayuda con checkbox al insertar en mysql

Si perdon, si te entendi lo q me dijiste, sino q no se como insertar el campo en la base de datos, estoy un poco confusa :s
  #10 (permalink)  
Antiguo 10/08/2010, 14:53
Avatar de _ssx  
Fecha de Ingreso: mayo-2003
Ubicación: mX
Mensajes: 683
Antigüedad: 21 años
Puntos: 60
Respuesta: Ayuda con checkbox al insertar en mysql

Pues lo primero que haria es esto.

1. Ponerle a todos los checkbox en el atributo NAME un array de nombre para recibir todos los que traigan datos.

Código PHP:
<INPUT TYPE="Checkbox" NAME="deficiencias[]" VALUE="Si"
2. En el PHP que recibe los datos haria algo como esto.

Código PHP:
$deficiencias implode(","$_POST['deficiencias']);
//Esto generaria una cadena con las deficiencias seleccionadas separandolas por una coma
//ejemplo Hola,Deficiencia,Cadena,Php 
3. Procedes a hacer el insert como estas acostumbrada

Código PHP:
INSERT INTO (campo,campo2,deficienciasVALUES ($campo,$campo2,$deficiencias); 
__________________
Escribe tu código de forma que refleje, y saque a relucir,lo mejor de tu carácter personal
www.oscararzola.com/blog
Principios de un programador
  #11 (permalink)  
Antiguo 10/08/2010, 15:14
 
Fecha de Ingreso: agosto-2010
Mensajes: 5
Antigüedad: 13 años, 9 meses
Puntos: 0
De acuerdo Respuesta: Ayuda con checkbox al insertar en mysql

Oye _SSX gracias por tu tiempo, lo probe y me funciono perfecto, lo hice tal cual como me dijiste, de verdad me salvaste.

Y gracias mortiprogramador por tu ejemplo lo tendre en cuenta.

Etiquetas: checkbox, mysql
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 04:09.