Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/01/2009, 12:21
Avatar de hgp147
hgp147
 
Fecha de Ingreso: diciembre-2006
Ubicación: Buenos Aires, Argentina
Mensajes: 980
Antigüedad: 17 años, 4 meses
Puntos: 36
Sistema de mensajes privados

Hola, estaba pensando como hacer la estrucutura de la db para un sistema de mensajes privados que se pueda enviar el mensaje a 3 destinatarios como máximo, se me ocurrio hacer dos tablas:

Tabla 1:
id | mensaje | asunto | fecha

Tabla 2:
id | usuario | tipo (destinatario o remitente) | mensaje_id | estado (si esta leido o no, o si esta borrado. 0->No leido, 1-Leido, 2-Borrado)

En la primer tabla guardo información relacionada con el mensaje y en la segunda con el usuario.

Al mostrar la bandeja de entrada de usuario haría:

SELECT * FROM tabla2 WHERE usuario='hgp147' AND tipo='dest' AND estado<>2 (no borrado)

Luego dentro del while con los resultados que devolvio la consulta hago:
-Consulto a la tabla1 el asunto y la fecha
-Consulto a la tabla2 el remitente que tenga el mismo mensaje_id

Para mostrar los mensajes enviados:
SELECT * FROM tabla2 WHERE usuario='hgp147' AND tipo='rem' AND estado<>2 (no borrado)

Luego dentro del while con los resultados que devolvio la consulta hago:
-Consulto a la tabla1 el asunto y la fecha
-Consulto a la tabla2 los destinatarios que tenga el mismo mensaje_id

Me gustaría que me digan si esta bien así o si se les ocurre algo mejor.

Gracias.
__________________
Spread Firefox | Download Day 2008
¡Únete en nuestra misión para alcanzar el Record Guinness al software más descargado en 24 horas! http://www.spreadfirefox.com/es-ES/worldrecord/

Última edición por hgp147; 03/01/2009 a las 12:35