Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

ayuda please!!! Relacionar 2 tablas.

Estas en el tema de ayuda please!!! Relacionar 2 tablas. en el foro de Mysql en Foros del Web. Hola a todos!. Mi problema es el siguiente: Estoy utilizando phpmyadmin para crear dos tablas que son estas: CREATE TABLE usuarios ( id_usuario INT NOT ...
  #1 (permalink)  
Antiguo 05/09/2007, 23:41
 
Fecha de Ingreso: agosto-2007
Mensajes: 106
Antigüedad: 16 años, 7 meses
Puntos: 0
ayuda please!!! Relacionar 2 tablas.

Hola a todos!.
Mi problema es el siguiente:
Estoy utilizando phpmyadmin para crear dos tablas que son estas:

CREATE TABLE usuarios
(
id_usuario INT NOT NULL AUTO_INCREMENT,
usuario VARCHAR(255),
email VARCHAR(255),
password VARCHAR(255),
PRIMARY KEY (id_usuario)
) TYPE = INNODB;

CREATE TABLE album
(
id_foto INT NOT NULL AUTO_INCREMENT,
id_usuario INT NOT NULL,
nom_foto VARCHAR(255),
descripcion TEXT,
PRIMARY KEY(id_foto),
INDEX (id_usuario),
FOREIGN KEY (id_usuario) REFERENCES usuarios(id_usuario) ON DELETE CASCADE ON UPDATE CASCADE
) TYPE = INNODB;

Tengo activado el have_innodb por lo que ese no es el problema.

Necesito que al insertar un dato en la tabla album, también se ingrese automaticamente el id_usuario que subio dicha foto, pero al hacer la siguiente consulta me da error: $sql = "INSERT INTO album (nom_foto) VALUES ($file_name)";
$result = mysql_query($sql, $link) or die("La siguiente consulta contiene algún error");

Es decir, primero se registra un usuario en la tabla "usuarios" y en otro momento puede subir fotos al servidor y que se guarde el nombre de la foto en la tabla "album" con su respectivo id_usuario(album) para saber quién subió la foto. Pero no logro hacerlo, ¿Qué hago mal?, ¿la consulta?, ¿las tablas están mal relacinadas?....ufff

¿Alguna idea?, os lo agradecería.
  #2 (permalink)  
Antiguo 06/09/2007, 08:59
Avatar de jerkan  
Fecha de Ingreso: septiembre-2005
Mensajes: 1.607
Antigüedad: 18 años, 7 meses
Puntos: 19
Re: ayuda please!!! Relacionar 2 tablas.

A nivel de MySQL no creo que puedas insertar automáticamente el valor id_usuario. Creo que deberías ponerlo en la consulta (ya que es un campo obligatorio).

Un saludo
  #3 (permalink)  
Antiguo 10/09/2007, 06:03
Avatar de Vincen  
Fecha de Ingreso: agosto-2007
Mensajes: 17
Antigüedad: 16 años, 8 meses
Puntos: 0
Re: ayuda please!!! Relacionar 2 tablas.

puedes hacerlo con procedimientos almacenados.. y usar ahi el "last_insert_id()" de esa manera al agregar un usuario ya agregues una foto y ahi ya comienza un album por ese usuario, y si dicho usuario quiere volver a cargar fotos, ahi obtienes primero su id, por ejemplo cuando este se logee, y alli ya tienes el id del usuario para tus sigueintes fotos en el album..
  #4 (permalink)  
Antiguo 30/06/2008, 22:30
 
Fecha de Ingreso: junio-2008
Mensajes: 1
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: ayuda please!!! Relacionar 2 tablas.

Hola, en dias pasados tenia un problema similar y lo corregi. anexo una consulta en sql para ver si algo de alli te puede servir. Sin embargo, para realizar esta relacion es necesario que conozcas algun dato del usuario que ingreso la informacion

$consql = "INSERT INTO VISITA SELECT NULL,T.IDTIPOVISITA,1,$id,$tid,NULL,NULL,NULL,'$fecha' FROM TIPOVISITA T WHERE T.NOMTIPOVISITA LIKE '%$tipo%'
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:27.