Foros del Web » Programando para Internet » PHP »

array y checkbox (necesitando aspirinas).

Estas en el tema de array y checkbox (necesitando aspirinas). en el foro de PHP en Foros del Web. Buenas! Estoy con el siguiente dolor de cabeza, jeje. Por un lado tengo una pagina.php donde modifico los datos de los registros de una tabla ...
  #1 (permalink)  
Antiguo 01/04/2012, 03:42
 
Fecha de Ingreso: mayo-2004
Mensajes: 102
Antigüedad: 20 años
Puntos: 5
array y checkbox (necesitando aspirinas).

Buenas!
Estoy con el siguiente dolor de cabeza, jeje.

Por un lado tengo una pagina.php donde modifico los datos de los registros de una tabla llamada tabla_a_modificar_parent por otro lado tengo una tabla llamada tabla_child

Entonces pongamos que el form sea asi:

1|Input:Nombre|
2|Input:edad|
3|Checkbox[]: tabla_child|

cuando agrego un record en el checkbox osea colomna 3 se guardan los datos de los id de la tabla_child de esta manera 1,2,9,44,100 en el caso que ese record pues tenga seleccionados id de la tabla_child.

Entonces en la pagina.php (donde modifico los records de tabla_a_modificar_parent) listo todo el contenido de tabla_child, hago un explode de la columna 3

y obtengo, por un lado un array que viene desde el explode que es

$numero[0] => 1. $numero[1] => 2. $numero[2] => 9. $numero[3] => 44. $numero[4] => 100



por otro lado tengo la lista de tabla_child que se listo

tabla_child_record1
tabla_child_record2
tabla_child_record3
tabla_child_record4
tabla_child_record5
tabla_child_record6
....

Mi objetivo seria hacer que se seleccionen los checkbox que coinciden con el array.
pero al hacer un if y comparar los string que vienen listados desde tabla_child y el array la comparación se hace de esta manera

tabla_child_record1=1(se selecciona)
tabla_child_record2=2(se selecciona)
tabla_child_record3=9(no se selecciona)
tabla_child_record4=44(no se selecciona)
tabla_child_record5=100(no se selecciona)
tabla_child_record6=null(no se selecciona)
tabla_child_record7=null(no se selecciona)
tabla_child_record8=null(no se selecciona)
tabla_child_record9=null(no se selecciona)
tabla_child_record10=null(no se selecciona)

Pero si lo pensamos bien el 9 se debería seleccionar porque esta en el array.

Bueno espero haber explicadome bien y bueno aqui dejo el codigo que estoy utilizando ahora para que no tengas que crear un codigo de cero para reproducir la logica del problema

Código PHP:
<?PHP
mysql_select_db
($database_localhost$localhost);
$query_mm "SELECT * FROM tabla_child ORDER BY 'Id_tabla_child' ASC";
$mm mysql_query($query_mm$localhost) or die(mysql_error());
$row_mm mysql_fetch_assoc($listar_facilities);
$totalRows_mm mysql_num_rows($listar_facilities);
$numero explode(", ",$row_school_profile['facilidades']);
?>

<?php $is='0'; do { echo 'numero '.$is?>
        <input name="Checkbox[]" type="checkbox" value="<?php echo $row_mm['Id_tabla_child']; ?>"
          <?php if($row_mm['Id_tabla_child']==$numero[$is]){echo "checked=\"checked\"";} ?> />
        <?php echo $row_mm['label']; ?> <br />
 <?php $is++;} while ($row_mm mysql_fetch_assoc($mm)); ?>
__________________
Bruno Quintana
  #2 (permalink)  
Antiguo 02/04/2012, 00:25
Avatar de repara2  
Fecha de Ingreso: septiembre-2010
Ubicación: München
Mensajes: 2.445
Antigüedad: 13 años, 7 meses
Puntos: 331
Respuesta: array y checkbox (necesitando aspirinas).

No se entiende muy bien la pregunta, pero en lugar de hacer :

Código PHP:
Ver original
  1. if($row_mm['Id_tabla_child']==$numero[$is])

utiliya in_array(), dado que lo que quieres sabes es si el valor está en un array determinado, algo así:

Código PHP:
Ver original
  1. if(in_array($row_mm['Id_tabla_child'], $numero[$is]))
__________________
Fere libenter homines, id quod volunt, credunt.

Etiquetas: checkbox, mysql, registro, sql, tabla
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 11:58.