Foros del Web » Programando para Internet » PHP »

Relaciones muchos a muchos

Estas en el tema de Relaciones muchos a muchos en el foro de PHP en Foros del Web. hola chicos.... tengo unos usuarios a los que les asigno cosas desde checkbox... esas asignaciones vienen de otra tabla.... ahora tengo otra tabla que relaciona ...
  #1 (permalink)  
Antiguo 26/04/2005, 11:56
Avatar de ignacio_giri  
Fecha de Ingreso: febrero-2003
Ubicación: Argentina, Rosario
Mensajes: 585
Antigüedad: 21 años, 2 meses
Puntos: 0
Relaciones muchos a muchos

hola chicos....

tengo unos usuarios a los que les asigno cosas desde checkbox... esas asignaciones vienen de otra tabla....

ahora tengo otra tabla que relaciona los 2....

id_usuario
id_asignacion

entonces necesito hacer un for each insertando datos por cada asignacion... (partiendo de checkbox...) debería usar me parece la funcion implode, pero me gustaria que me guien un poco.

Saludos.
__________________
Ignacio
  #2 (permalink)  
Antiguo 26/04/2005, 12:19
 
Fecha de Ingreso: marzo-2005
Mensajes: 163
Antigüedad: 19 años, 1 mes
Puntos: 0
Con algo asi deberia de andar
Código PHP:
//esto va en un formulario html
<input type="checkbox" name="asignar[]" value="id_asignacion" >


//esto en el php
$select $_REQUEST['asignar']
foreach (
$select as $item)
{
    
//aca haces el insert

Probalo, cualquier cosa miramos si quedo algun error.
Saludos
  #3 (permalink)  
Antiguo 26/04/2005, 12:20
Avatar de ignacio_giri  
Fecha de Ingreso: febrero-2003
Ubicación: Argentina, Rosario
Mensajes: 585
Antigüedad: 21 años, 2 meses
Puntos: 0
si, es lo que estaba haciendo..... pero... no falta un implode??

algo asi???

Código:
   $ultimo = mysql_insert_id();
   $relaciones = implode(",",$_POST['id_equipamiento']);
   foreach ($relaciones as $value) {
	  $agregar = "INSERT INTO $tabla (id_inmueble, id_equipamiento) VALUES ('$ultimo', '$value')";
   $ejecutar = mysql_query ($agregar) or error( mysql_error() );
   }
__________________
Ignacio
  #4 (permalink)  
Antiguo 26/04/2005, 12:34
 
Fecha de Ingreso: marzo-2005
Mensajes: 163
Antigüedad: 19 años, 1 mes
Puntos: 0
no, la idea es que cuando definas los checkbox les pongas a todos el mismo nombre y ya te vienen en un arreglo.
Saludos
  #5 (permalink)  
Antiguo 26/04/2005, 12:39
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 7 meses
Puntos: 41
Y por qué faltaría un implode???
Con eso te quedarían todos los id_equipmento seleccionados separados por una coma. Y tú no quieres eso. Quieres insertar cada id por separado.
Código PHP:
   $ultimo mysql_insert_id();
   foreach (
$_POST['id_equipamiento'] as $value) {
      
$agregar "INSERT INTO $tabla (id_inmueble, id_equipamiento) VALUES ('$ultimo', '$value')";
   
mysql_query ($agregar) or errormysql_error() );
   } 
No sé de dónde sacaste lo del implode().
Saludos
  #6 (permalink)  
Antiguo 26/04/2005, 12:42
Avatar de ignacio_giri  
Fecha de Ingreso: febrero-2003
Ubicación: Argentina, Rosario
Mensajes: 585
Antigüedad: 21 años, 2 meses
Puntos: 0
jeje, me estaba complicando solo... jejeje, es más sencillo de lo que pensaba...

Saludos y gracias.
__________________
Ignacio
  #7 (permalink)  
Antiguo 26/04/2005, 12:42
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 7 meses
Puntos: 41
El implode te podría servir para consultas (SELECT) o actualizaciones (UPDATE) donde puedas utilizar el operador "IN". Entonces crearías una lista separada por comas. Pero en este caso (INSERT) no tiene razón de ser.
Saludos
  #8 (permalink)  
Antiguo 26/04/2005, 12:42
Avatar de ignacio_giri  
Fecha de Ingreso: febrero-2003
Ubicación: Argentina, Rosario
Mensajes: 585
Antigüedad: 21 años, 2 meses
Puntos: 0
jeje, me estaba complicando solo... jejeje, es más sencillo de lo que pensaba...

pero ahora tengo otra complicacion...


la asignacion que le doy a su vez tiene otra asignacion más.... como lo harían a eso...

Saludos y gracias.
__________________
Ignacio
  #9 (permalink)  
Antiguo 26/04/2005, 12:45
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 7 meses
Puntos: 41
No te entendí nada... ¿Puedes explicarlo mejor con un ejemplo?
Saludos
  #10 (permalink)  
Antiguo 26/04/2005, 12:47
Avatar de ignacio_giri  
Fecha de Ingreso: febrero-2003
Ubicación: Argentina, Rosario
Mensajes: 585
Antigüedad: 21 años, 2 meses
Puntos: 0
tengo un usuario que le asigno una tarea... (con el ejemplo que dimos antes)

ahora... esa tarea... tiene otra asignacion más... y tengo que hacer que se guarde todo para ir relacionandolo...

se entiende?
__________________
Ignacio
  #11 (permalink)  
Antiguo 26/04/2005, 13:07
Avatar de ignacio_giri  
Fecha de Ingreso: febrero-2003
Ubicación: Argentina, Rosario
Mensajes: 585
Antigüedad: 21 años, 2 meses
Puntos: 0
listo listo.... ya anda todo de maravillas... quedó excelente!

gracias, muchas gracias!
__________________
Ignacio
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 09:26.