Gente: programé un script para que los usuarios de un sitio puedan dejar un mensaje, y los clientes, logueándose, puedan responderlos.
Los mensajes y las respuestas se guardan en un tabla en mysql, así:
id, id_usuario, id_cliente, fecha, mensaje, estado, id_origen
en donde estado es "pendiente" o"respondido" e id_origen guarda el id del mensaje original al cuál se está respondiendo (es decir, si un usuario deja un mensaje se graba con id 1 y queda con estado "pendiente" e id_origen vacío, y cuando el cliente responde, grabándose con id 2 e id_origen pasa a tener el valor 1 (es decir, el del id del mensaje original del cuál éste es la respuesta). Además, el mensaje originario, con id 1, pasa su estado a "respondido".
A su vez, si el usuario re-responde, esta respuesta tendrá un id 3, con estado "pendiente" y el id_origen va a ser el id 2, mientras que el mensaje con id pasará su estado a "respondido" y así sucesivamente.
Mi pregunta es, de qué manera puedo hacer una consulta que los liste, pero muestre los mensajes y sus respuestas debajo, como en algunos foros, con una tabulación o "bullets" o algo así.
Puedo hacer la consulta común tipo
Código:
$sql="SELECT *, men.nombre as nombre_mensaje, men.id as idmen, men.email as email_mensaje, un.nombre as nombre_unidad, prop.nombre as nombre_propiedad from pactemos_mensajes men
inner join pactemos_unidades un
on men.id_unidad=un.id
inner join pactemos_propiedades prop
on un.id_propiedad=prop.id
where prop.id_usuario='$user_id' order by $orden";
Pero no se me ocurre cómo combinar esto con las respuestas en la consulta, ni mucho menos cómo mostrarlo en php.
quizá alguien hizo algo parecido y me pueda ayudar.
Gracias a todos.