Foros del Web » Programando para Internet » PHP »

Como mostrar checkbox de bd

Estas en el tema de Como mostrar checkbox de bd en el foro de PHP en Foros del Web. Buenos dias soy nuevo en este foro y recurro para que me orienten y ojala me puedan ayudar queridos amigos del foro , pasa que ...
  #1 (permalink)  
Antiguo 12/08/2011, 09:46
 
Fecha de Ingreso: agosto-2011
Mensajes: 9
Antigüedad: 13 años, 3 meses
Puntos: 0
Pregunta Como mostrar checkbox de bd

Buenos dias soy nuevo en este foro y recurro para que me orienten y ojala me puedan ayudar queridos amigos del foro , pasa que tengo un pequeño formulario donde cargo todos mis datos de una tabla en un arreglo checkbox, luego los inserto

<?php
$conexion=mysql_connect("localhost","root","mysql" )or
die("Problemas en la conexion");
mysql_select_db("gerenciador",$conexion) or
die("Problemas en la seleccion de la bd");
$registros=mysql_query("select id,nombre_r from chk_requerimientos",$conexion) or
die("Problemas en el select:".mysql_error());
while($reg=mysql_fetch_array($registros))
{
echo "<input type='checkbox' name='requerimientos[]' value='$reg[nombre_r]'> $reg[nombre_r]<br>";
echo "<br>";
}
?>
--------------------------
$requerimientos= implode(",",$_POST['requerimientos']);
y los inserto en mi bd asi : Diagramas,Informes Técnicos,Presupuestos

Ahora bien tengo una gran duda, lo que necesito es listar todos los checkbox osea como en la primera parte, pero que esten marcados los que fueron seleccionados por ejemplo yo tengo estos checkbox

Planos[x]

Diagramas[x]

Memorias Descriptivas

Informes Técnicos

Informes Fotográficos

Presupuestos

y solo marque planos y diagramas,solo deben salir marcados los mismo.Creo que no es muy complicado el tema, pero le vengo dandole hace un par de dias para poder resolverlo espero puedan ayudarme, gracias
  #2 (permalink)  
Antiguo 12/08/2011, 09:49
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 13 años, 4 meses
Puntos: 793
Respuesta: Como mostrar checkbox de bd

Para que abres otro tema con lo mismo si ya te había dado una solución:

Código PHP:
Ver original
  1. <?php
  2.  
  3. $reqs = 'Arroz,Tomate,XYZ,Pera';
  4. $sel = 'Arroz,Pera';
  5.  
  6. $r = explode(',', $reqs);
  7. $s = explode(',', $sel);
  8.  
  9. foreach ($r as $lista) {
  10.     if (in_array($lista, $s)) {
  11.         echo $lista . '[X]<br />';
  12.     } else {
  13.         echo $lista . '[ ]<br />';
  14.     }
  15. }

Lo pueden unir con este tema:

http://www.forosdelweb.com/f18/uso-checkbox-936074/
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #3 (permalink)  
Antiguo 12/08/2011, 09:52
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 9 meses
Puntos: 288
Respuesta: Como mostrar checkbox de bd

Hola amigo nos podes mostrar la estructura de la tabla chk_requerimientos
  #4 (permalink)  
Antiguo 12/08/2011, 09:54
 
Fecha de Ingreso: agosto-2011
Mensajes: 9
Antigüedad: 13 años, 3 meses
Puntos: 0
Respuesta: Como mostrar checkbox de bd

No funciona tu solucion andres lo siento.
  #5 (permalink)  
Antiguo 12/08/2011, 09:54
 
Fecha de Ingreso: agosto-2011
Mensajes: 9
Antigüedad: 13 años, 3 meses
Puntos: 0
Respuesta: Como mostrar checkbox de bd

La estructura es asì:
id int(100)
nombre_r text

--

INSERT INTO `chk_requerimientos` (`id`, `nombre_r`) VALUES
(1, 'Elaboraci&oacute;n de T&eacute;rminos de Referencia'),
(2, 'Revisi&oacute;n de Bases para concursos y/o Licitaciones'),
(3, 'Asesor&iacute;a para la elaboraci&oacute;n de fichas t&eacute;cnica y/o &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp Bases de Concursos'),
(4, 'Asesor&iacute;a Pre-venta:<br>&nbsp &nbsp &nbsp -Listado de equipamiento.<br>&nbsp &nbsp &nbsp -Busqueda de nuevos productos.<br> &nbsp &nbsp &nbsp -Sustentaci&oacute;n de propuestas t&eacute;cnicas.'),
(5, 'Elaboraci&oacute;n de Propuestas T&eacute;cnicas'),
(6, 'Estudios de Cobertura'),
(7, 'Site Survey'),
(8, 'Cursos de Capacitaci&oacute;n a clientes internos o externos'),
(9, 'Presentaciones T&eacute;cnicas'),
(10, 'Elaboraci&oacute;n de Expedientes de Ingenier&iacute;a B&aacute;sica'),
(11, 'Elaboraci&oacute;n de Expedientes de Ingenier&iacute;a de Detalle');
  #6 (permalink)  
Antiguo 12/08/2011, 09:55
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 13 años, 4 meses
Puntos: 793
Respuesta: Como mostrar checkbox de bd

Cita:
Iniciado por programadormg10 Ver Mensaje
No funciona tu solucion andres lo siento.
Otra cosa es que no sepas aplicarla más gráfico ni con paint, dejo este tema.
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #7 (permalink)  
Antiguo 12/08/2011, 10:02
 
Fecha de Ingreso: agosto-2011
Mensajes: 9
Antigüedad: 13 años, 3 meses
Puntos: 0
Respuesta: Como mostrar checkbox de bd

De veras lo intente, pero no funciono, no te moleste tampoco.Pero gracias de todas maneras
  #8 (permalink)  
Antiguo 12/08/2011, 10:40
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 13 años, 4 meses
Puntos: 793
Respuesta: Como mostrar checkbox de bd

Funciona bien, pero el único problema es todo lo que guardas en la base de datos. Deberías guardar nombres más cortos y específicos. Tienes que compararlo tal y como está en la base de datos. Se me ocurre que guardes una descripción corta para comparar y una larga para mostrar. En fin vez que si funciona. Maneja cortos como Site Survey o maneja una especie de código.

Código PHP:
Ver original
  1. <?php
  2.  
  3. $conexion = mysql_connect("localhost", "root", "12345") or
  4.         die("Problemas en la conexion");
  5. mysql_select_db("basededatos", $conexion) or
  6.         die("Problemas en la seleccion de la bd");
  7. $registros = mysql_query("select id,nombre_r from asesorias", $conexion) or
  8.         die("Problemas en el select:" . mysql_error());
  9. while ($reg = mysql_fetch_array($registros)) {
  10.     $categorias[] = $reg['nombre_r'];
  11. }
  12.  
  13. $sel = 'Elaboraci&oacute;n de T&eacute;rminos de Referencia,Site Survey,Asesor&iacute;a Pre-venta:<br>&nbsp &nbsp &nbsp -Listado de equipamiento.<br>&nbsp &nbsp &nbsp -Busqueda de nuevos productos.<br> &nbsp &nbsp &nbsp -Sustentaci&oacute;n de propuestas t&eacute;cnicas.';
  14.  
  15. $s = explode(',', $sel);
  16.  
  17. foreach ($categorias as $lista) {
  18.     if (in_array($lista, $s)) {
  19.         echo '<input type="checkbox" name="reque[]" value="'.$lista.'" checked="yes">' . $lista . '<br />';
  20.     } else {
  21.         echo '<input type="checkbox" name="reque[]" value="'.$lista.'">' . $lista . '<br />';
  22.     }
  23. }
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #9 (permalink)  
Antiguo 12/08/2011, 10:46
 
Fecha de Ingreso: agosto-2011
Mensajes: 9
Antigüedad: 13 años, 3 meses
Puntos: 0
Respuesta: Como mostrar checkbox de bd

Gracias andres, en serio te lo agradezco enormemente, en un rato voy a adaptarlo y ver que tal funciona. Miles de gracias.
  #10 (permalink)  
Antiguo 12/08/2011, 10:54
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 13 años, 4 meses
Puntos: 793
Respuesta: Como mostrar checkbox de bd

Te dejo la forma por el ID, me parece que funciona mejor por lo que ya dije anteriormente, guardas en los seleccionados la ID de cada categoría y luego comparas.

Código PHP:
Ver original
  1. <?php
  2.  
  3. $conexion = mysql_connect("localhost", "root", "12345") or
  4.         die("Problemas en la conexion");
  5. mysql_select_db("basededatos", $conexion) or
  6.         die("Problemas en la seleccion de la bd");
  7. $registros = mysql_query("select id,nombre_r from asesorias", $conexion) or
  8.         die("Problemas en el select:" . mysql_error());
  9. while ($reg = mysql_fetch_array($registros)) {
  10.     $categoriaid[] = $reg['id'];
  11.     $categoriades[] = $reg['nombre_r'];
  12. }
  13.  
  14. $numc = mysql_num_rows($registros);
  15.  
  16. $sel = '1,2,7';
  17. $s = explode(',', $sel);
  18.  
  19. for ($x=0; $x<$numc; $x++) {
  20.      if (in_array($categoriaid[$x], $s)) {
  21.         echo '<input type="checkbox" name="reque[]" value="'.$categoriaid[$x].'" checked="yes">' . $categoriades[$x] . '<br />';
  22.     } else {
  23.         echo '<input type="checkbox" name="reque[]" value="'.$categoriaid[$x].'">' . $categoriades[$x] . '<br />';
  24.     }
  25. }
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #11 (permalink)  
Antiguo 12/08/2011, 13:59
 
Fecha de Ingreso: agosto-2011
Mensajes: 9
Antigüedad: 13 años, 3 meses
Puntos: 0
Respuesta: Como mostrar checkbox de bd

Excelente hermano en serio muchas gracias, a osea tu lo probaste tambien?, gracias por tu tiempo en serio.

Etiquetas: bd, checkbox, mysql, registro, sql, tabla, formulario
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 12:08.