Foros del Web » Programando para Internet » PHP »

"Tienes nuevos mensajes"

Estas en el tema de "Tienes nuevos mensajes" en el foro de PHP en Foros del Web. He creado un sistema de usuarios con mensajes privados, pero tengo un pequeño problema a la hora de reconocer cuantos mensajes nuevos tiene dicho usuario. ...
  #1 (permalink)  
Antiguo 09/12/2008, 13:11
Avatar de karlic0s  
Fecha de Ingreso: abril-2007
Ubicación: Cartagena (Murcia)
Mensajes: 241
Antigüedad: 17 años
Puntos: 18
"Tienes nuevos mensajes"

He creado un sistema de usuarios con mensajes privados, pero tengo un pequeño problema a la hora de reconocer cuantos mensajes nuevos tiene dicho usuario.

Mi pregunta es que método seguir para que por ejemplo: en el mensaje privado haya un campo oculto llamado nuevo_mensaje, cuando envias un mensaje se guarda como 1 con un input type="hidden" y al visualizar éste ese dato cambie a 0, esto se puede hacer con la visualización del dato o lo tengo que hacer a traves de clicks? es decir, con onclick (si es que así se puede). Agradezco de antemano su ayuda, me gustaría saber (preferiblemente con visualización si se puede) que sentencia usar para esto.


Saludos!!
  #2 (permalink)  
Antiguo 09/12/2008, 13:14
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: "Tienes nuevos mensajes"

Es mas facil crear el campo y ponerle '1' como default (suponiendo que 1 es NO leído), y cuando el usuario abra el mensaje, simplemente cambias el valor a 0.
  #3 (permalink)  
Antiguo 09/12/2008, 13:16
Avatar de masterojitos  
Fecha de Ingreso: julio-2008
Ubicación: Lima Callao Chucuito
Mensajes: 1.931
Antigüedad: 15 años, 9 meses
Puntos: 105
Respuesta: "Tienes nuevos mensajes"

bueno pienso que la logica adecuada para ello seria, que cuando el usuario envie un nuevo mensaje privado... este se cree con un estado en cero(0) y así, al que recibe... solo le muestras aquellos mensajes que esten en el estado cero(0) ... y cuando este ponga click para visualizarlo, le mandas a listar el mensaje y a la vez, cambias el estado del mensaje a uno(1) por ejemplo.

bueno creo que asi se solucionaria tu problema....

suerte y que Dios te Bendiga.
__________________
Atte. MasterOjitos :ojotes:
Todo sobre Programación Web
Las ultimas tendencias en Efectos y Recursos Web: MasterOjitos Blog
  #4 (permalink)  
Antiguo 09/12/2008, 13:37
Avatar de karlic0s  
Fecha de Ingreso: abril-2007
Ubicación: Cartagena (Murcia)
Mensajes: 241
Antigüedad: 17 años
Puntos: 18
Respuesta: "Tienes nuevos mensajes"

Si la lógica más o menos es algo como lo que yo decia, gracias a ambos, pero ahora bien... hay alguna sentencia con php que al visualizar por ejemplo el campo "contenido" de los mensajes actualice el campo "mensaje_leido" a 1 por ejemplo? o se ha de hacer mediante clicks? si es así estaria eternamente agradecido si me pusieran como hacer la sentencia o algún enlace a un tutorial (que yo no encontré por ningun lado)

Mil gracias de nuevo y saludos!
  #5 (permalink)  
Antiguo 09/12/2008, 13:43
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: "Tienes nuevos mensajes"

En la misma pagina donde visualizas el contenido, haces un query y cambias el valor a 1.
Se supone que si llegaron hasta ahi, es porque estan leyendo el mensaje.
  #6 (permalink)  
Antiguo 10/12/2008, 09:36
Avatar de masterojitos  
Fecha de Ingreso: julio-2008
Ubicación: Lima Callao Chucuito
Mensajes: 1.931
Antigüedad: 15 años, 9 meses
Puntos: 105
Respuesta: "Tienes nuevos mensajes"

<a href="ver.php?id=xx">ver mensaje xxxx</a>

ver.php
.................................................. .................................................. ..............
mysql_query("update mensajes set estado=1 where id='".$_REQUEST['id']."'");//cambias su estado
........sentencias para mostrar el mensaje.................
mysql_query("select contendido from mensajes where id='".$_REQUEST['id']."'");
.................................................. .................................................. ..............

suerte.
__________________
Atte. MasterOjitos :ojotes:
Todo sobre Programación Web
Las ultimas tendencias en Efectos y Recursos Web: MasterOjitos Blog
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 12:42.