14/04/2005, 16:52
|
| | Fecha de Ingreso: junio-2004
Mensajes: 60
Antigüedad: 20 años, 5 meses Puntos: 1 | |
consulta tablas relacionadas y mostrar checkboxs activos o no Hola a todos
La consulta es:
Tengo una tabla de grupos: grupos(idg, nombre)
Una tabla de usuarios: usuarios (idusu,apellido..etc)
y una tabla de relaciones de grupos: relac_grupos (idrg,id_re_idusu, re_idg, flag) en esta ultima tabla intento llevar la relación de los grupos a los que pertenece cada usuario, es decir.. un usuario puede pertenecer a varios grupos, ej:
idrg. re_idusu (de la tabla de usuarios) re_idg (de la tabla grupos) flag
1 1 1 s
2 1 2 s
3 1 5 s
4 2 1 n
La ultima columna (flag) la he puesto para chequear si esta activado o no. Fue un intento de ultimo momento, je.
Lo que intento hacer es mostrar una consulta para la modificación de los datos del usuario, donde a través de checkboxes (marcados o no) me muestre "todos los grupos existentes", pero solamente marcados los que pertenecen a ese usuario.
<?
$query1=" SELECT * FROM relac_grupos";
$result1=mysql_query($query1);
echo'<p><u>Grupos:</u><br>';
while ($row=mysql_fetch_array($result1)) {
echo'<input type="checkbox" name="grupo" value="s" <?=CheckA("s", $row["flag"]);?>'.$row["nombre"].'</input><br>';
}
mysql_free_result($result1);
function CheckeA($sValor1, $sValor2) {
if ($sValor1 == $sValor2) {
$sSale = 'checked';
}
return $sSale;
}
?>
Bueno el problema es como mostrar los datos que tengo en la db con sus respectivos estados (marcados o no), pero teniendo en cuenta la tabla intermedia donde se relacionan (usuario, grupos).
Otro Intento:
Tambien intenté hacer q solo me muestre los datos que le corresponden a ese usuario:
$query2 ="SELECT * FROM relac_grupos LEFT JOIN grupos ON relac_grupos.re_idg = grupos.idg AND relac_grupos.re_idusu = '$idusu'";
aqui si me muestra y tengo todos los datos pero solo los que corresponden a un usuarios que tienen esos grupos..
Gracias a todos... desde ya... por meterse en este bardo...
al3jo |