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.
Última edición por hgp147; 03/01/2009 a las 12:35 |