Ver Mensaje Individual
  #2 (permalink)  
Antiguo 19/08/2004, 07:05
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Cita:
hay dos maneras que no quiero usar para hacer esto, una es, crear una tabla y meter ahí cada tema por usuario que no ha leido y la otra es crear una cookie por cada tema leido.
Se trataría de meter en tu Tabla los mensajes (ID del mensaje) que ha leido ese usuario ..

tabla: mensajes_leidos
id_mensajes_leidos
id_usuario
id_mensaje

En tu script que muestras el mensaje en cuestión .. haces un "INSERT" a tu BD de mensajes leidos sólo si ese ID del mensaje para ese usuario no se encuentra ya en tu BD ..

Algo tipo:

Código PHP:
// verificar que no exista ya ese ID para ese usuario como leido
$sql="SELECT COUNT(*) FROM mensajes_leidos WHERE id_usuario ='$id_usuario' AND id_mensaje='id_mensaje'";
$resultado=mysql_query($sql) or die (mysql_error());
if (
mysql_result($resultado,0) == 0){
// haces tu INSERT a la tabla mensajes_leidos con el $id_usuario y el $id_mensaje .. 
// Estas variabels PHP ya las tendrás localizadas en tu script de "ver mensaje" ya que usaras cookies o sesiones para saber que usuario está "en el sistema" y el ID del mensaje que se está presentando ...

A la hora de hacer tu listado de temas .. para indicar a ese usuario que ya ha leido ese mensaje tendrás que hacer una consulta SQL con tu tabla de mensajes y la de "mensajes_leidos" asociadas por ese ID_mensaje y bajo (condición) que sean de ese ID_usuario .. así obtendrás por ejemplo los mensajes "nuevos" para el usuario (que no ha leido) .. O bien haces una consulta a la tabla "mensajes_leidos" (de tipo COUNT()) para ver si para ese ID_mensaje existe el ID_usuario y así saber uno por uno (mensajes) que ya lo vió.

Lo mismo puedes hacer con los mensajes que el usuario "responde" (con una tabla similar) ...

No al contrario .. fijate que para un usuario .. el nº de mensajes probables que lee (que entra al mensaje a abrirlo) es menor que el que no ha leido. Las cookies no te servirían .. por qué si "borra" o no acepta cookies tu usuario igualmente en algún momento hay que llevar este registro de "ID mensaje -> usuario" en una Tabla de tu BD para volcarlo sobre la cookie.

Un saludo,