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

Enlazar datos por ID

Estas en el tema de Enlazar datos por ID en el foro de Bases de Datos General en Foros del Web. Hola... Tengo una mensajería privada, en la cual el destinatario y remitente se almacena en una base de datos (VARCHAR), por lo que tengo una ...
  #1 (permalink)  
Antiguo 04/01/2012, 09:56
 
Fecha de Ingreso: enero-2012
Mensajes: 8
Antigüedad: 12 años, 4 meses
Puntos: 0
Pregunta Enlazar datos por ID

Hola...

Tengo una mensajería privada, en la cual el destinatario y remitente se almacena en una base de datos (VARCHAR), por lo que tengo una tabla llamada mensajes y otra llamada usuarios.

He preferido cambiar eso, para usarlo por ID (INT) y quisiera saber cómo enlazar el ID del usuario del remitente del mensaje y el de usuario. Por ejemplo, yo me llamo Luis y soy el ID 1 y lo envío a Javier, con ID 2, entonces el mensaje iría así:

remitente = 1 destinatario = 2

Lo que quiero es que en vez de mostrar el ID del remitente y destinatario, muestre el nombre de usuario del remitente y destinatario, que está en la tabla usuarios.

Podrían orientarme?
  #2 (permalink)  
Antiguo 04/01/2012, 11:07
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 19 años, 7 meses
Puntos: 71
Respuesta: Enlazar datos por ID

Has hecho tu la aplicación? por que si la has hecho tu, deberías saberlo.
Sino lo has hecho, solo tienes que cambiar el campo de la base de datos a mostrar, eso si, en la consulta, debes traerte ese campo también.

PD: Te pondría algo de código, pero como no lo has hecho tu, yo tampoco. Saludos!
  #3 (permalink)  
Antiguo 04/01/2012, 11:19
 
Fecha de Ingreso: enero-2012
Mensajes: 8
Antigüedad: 12 años, 4 meses
Puntos: 0
Respuesta: Enlazar datos por ID

Cita:
Iniciado por DooBie Ver Mensaje
Has hecho tu la aplicación? por que si la has hecho tu, deberías saberlo.
Sino lo has hecho, solo tienes que cambiar el campo de la base de datos a mostrar, eso si, en la consulta, debes traerte ese campo también.

PD: Te pondría algo de código, pero como no lo has hecho tu, yo tampoco. Saludos!
No tengo hecha la "aplicación" de esa manera, intento hacerlo así, como he dicho, lo que sí tengo son los nombres en vez del id del usuario para que así muestre el nombre. Pero como los usuarios cambian de nick, si fuera por ID aparecería el nick actual y no el nick que estuviera registrado en la base de datos...

El código actual es el siguiente:

$me es el usuario actual de la sesión
Código PHP:
Ver original
  1. $sql = "SELECT * FROM messages WHERE to='".$me."' and id='".$id."'";
  2. $ep = mysql_query($sql, $conexion) or die(mysql_error());
  3. $datos = mysql_fetch_assoc($ep);

y para mostrar el nombre del autor uso esto:

$datos['from'];

Y muestra el nombre del autor, ¿el problema? que muestra tal como está guardado en la base de datos, lo que quiero es que muestre el nombre desde el ID del autor de la tabla usuarios y no el nombre ya preedefinido desde la tabla messages, usaría int y no varchar




Pero gracias por comentar.

Última edición por Isidromlc; 04/01/2012 a las 11:24
  #4 (permalink)  
Antiguo 04/01/2012, 11:58
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 19 años, 7 meses
Puntos: 71
Respuesta: Enlazar datos por ID

Si no lo he entendido mal, tienes el id y el nombre por un lado, y el usuario por otro.
Si es así, tendrías que hacer una segunda consulta con el id, hacia el nombre.
Igual me he liado con lo que has dicho... no se
  #5 (permalink)  
Antiguo 04/01/2012, 11:59
webankenovi
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Enlazar datos por ID

eske si haces un select de mensajes pues te cojera el id de mensajes y el nombre de mensajes no de usuarios
  #6 (permalink)  
Antiguo 04/01/2012, 12:08
 
Fecha de Ingreso: julio-2010
Mensajes: 197
Antigüedad: 13 años, 9 meses
Puntos: 32
Respuesta: Enlazar datos por ID

cambia la ultima linea por mysql_fetch_array

Etiquetas: enlazar, tabla, usuarios
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 02:52.