Foros del Web » Programando para Internet » PHP »

creacion de un foro: deteccion de posts nuevos

Estas en el tema de creacion de un foro: deteccion de posts nuevos en el foro de PHP en Foros del Web. hola a todos, estoy trabajando en la creacion de un foro y quiero saber como funciona el sistema que usan los foros para saber cuando ...
  #1 (permalink)  
Antiguo 21/01/2008, 15:43
 
Fecha de Ingreso: noviembre-2007
Mensajes: 203
Antigüedad: 16 años, 5 meses
Puntos: 0
creacion de un foro: deteccion de posts nuevos

hola a todos, estoy trabajando en la creacion de un foro y quiero saber como funciona el sistema que usan los foros para saber cuando un post es nuevo para un usuario.
Gracias.
  #2 (permalink)  
Antiguo 21/01/2008, 15:50
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.341
Antigüedad: 21 años, 5 meses
Puntos: 17
Re: creacion de un foro: deteccion de posts nuevos

No sé cómo trabajarán los foros, así a bote pronto lo que se me ocurre a mi es lo siguiente:

Tabla con tres campos:
ID_Mensaje
ID_Usuario
Fecha_ultimo_acceso

Y en base a esa tabla se ve si un usuario a accedido a un mensaje en concreto, o si lo ha hecho en una fecha anterior a la actual (se puede comprobar la fecha con las fechas de los comentarios a ver si hay mensajes posteriores a la fecha y hora del último acceso).

Me parece un sistema bastante pesado para la BDD, quizás haya alguna otra manera más óptima.
  #3 (permalink)  
Antiguo 21/01/2008, 17:03
 
Fecha de Ingreso: noviembre-2007
Mensajes: 203
Antigüedad: 16 años, 5 meses
Puntos: 0
Re: creacion de un foro: deteccion de posts nuevos

umm, puede ser, pero... si hay muchos usuarios y muchos mensajes eso no reduciría el rendimiento tanto del foro como de la base de datos???
  #4 (permalink)  
Antiguo 21/01/2008, 17:30
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.341
Antigüedad: 21 años, 5 meses
Puntos: 17
Re: creacion de un foro: deteccion de posts nuevos

Sí.

Por eso digo que quizás sea más óptima otra forma de hacerlo. Todo sería analizarlo bien. O mirar cómo lo implementa un sistema ya hecho.

Desde luego, si quieres saber que mensajes no ha visitado un usuario, esa es la forma que se me ocurre a mi.
  #5 (permalink)  
Antiguo 21/01/2008, 17:32
 
Fecha de Ingreso: noviembre-2007
Mensajes: 203
Antigüedad: 16 años, 5 meses
Puntos: 0
Re: creacion de un foro: deteccion de posts nuevos

ok, gracias.
  #6 (permalink)  
Antiguo 21/01/2008, 18:58
 
Fecha de Ingreso: enero-2008
Ubicación: en Punta Arenas
Mensajes: 47
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: creacion de un foro: deteccion de posts nuevos

comparando fechas?
onda ssiempre hacer un update a la tabla de usuarios cuando se deslogue y compara los mensajes (por fechas) con la ultima fecha de ingreso del usuario
aolgo asi lo aria
  #7 (permalink)  
Antiguo 21/01/2008, 19:02
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 17 años, 5 meses
Puntos: 23
Re: creacion de un foro: deteccion de posts nuevos

pss eso siempre--
cuando se postea insertas la fecha y hora..
y a la hora de mostrarlos, lo ordenas por la fecha y listo, tan simple como eso ;)

saludos
__________________
Recuerda usar el highlight para mostrar código
mauricioblint.com
  #8 (permalink)  
Antiguo 21/01/2008, 19:13
 
Fecha de Ingreso: noviembre-2007
Mensajes: 203
Antigüedad: 16 años, 5 meses
Puntos: 0
Re: creacion de un foro: deteccion de posts nuevos

eso podria funcionar pero si al ingresar ese usuario digamos que tiene 18 posts desde su ultimo ingreso, si el solo lee el 18 se marcarian como leidos los otros 17
  #9 (permalink)  
Antiguo 21/01/2008, 19:18
 
Fecha de Ingreso: noviembre-2007
Mensajes: 203
Antigüedad: 16 años, 5 meses
Puntos: 0
Re: creacion de un foro: deteccion de posts nuevos

WOOWWW!!!
esperen se me ocurrio otra idea y la aporto ahora mismo, no se que tanto afecte el rendimiento pero debe servir, se empieza por algo si no sirve pues obviamente pensaremos mas!!!
al ingresar el usuario se cargan temporalmente en una tabla de la base de datos (obviamente solo el id del mensaje y su id de usuario para diferenciarlo) y que con cada post que el usuario lea se elimina el registro de la tabla para que no aparezca como post nuevo!!!
wooow que bien ojala eso no afecte el rendimiento por que sinceramente me parece muy bueno... :D :D :D :D :D :D
  #10 (permalink)  
Antiguo 21/01/2008, 20:26
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 17 años, 5 meses
Puntos: 23
Re: creacion de un foro: deteccion de posts nuevos

Bueno, pero ahi ya te estas yendo del tema que planteastes al principio de tema..
otra cosa,
es lugar de eliminar, seria mejor agregar... osea, agregar los temas leidos en vez de eliminarlos, te ahorras de poner registros de gusto, osea, temas que quizas el usuairo ni los lea
__________________
Recuerda usar el highlight para mostrar código
mauricioblint.com
  #11 (permalink)  
Antiguo 21/01/2008, 20:28
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 17 años, 5 meses
Puntos: 23
Re: creacion de un foro: deteccion de posts nuevos

Cita:
Iniciado por mm55 Ver Mensaje
eso podria funcionar pero si al ingresar ese usuario digamos que tiene 18 posts desde su ultimo ingreso, si el solo lee el 18 se marcarian como leidos los otros 17
esto que dices no lo entendi,
una cosa es ordenar por fecha reciente y mostrarlos y otra cosa es marcar como leidos o no,
nose pòrque, pero confundes y meclas todo :S
__________________
Recuerda usar el highlight para mostrar código
mauricioblint.com
  #12 (permalink)  
Antiguo 22/01/2008, 02:41
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.341
Antigüedad: 21 años, 5 meses
Puntos: 17
Re: creacion de un foro: deteccion de posts nuevos

Yo lo que he entendido es que cuando un usuario accede al foro se marquen de un modo diferenciado los temas que tienen posts que no haya leído.

Y esto no es tan sencillo, ya que un usuario se puede loguear y no haber leído todos los mensajes, por lo que no se puede mirar sólo con la fecha de último ingreso y la fecha del último comentario del tema.

En ese aspecto sigo pensando en algo parecido a la estructura que planteé, aunque quizás con alguna modificación:


Tabla de usuarios-posts:

ID_User
ID_Post
Numero_Respuestas

Así, al loguearse en el foro y mostrar los temas, por cada uno de ellos se hace una consulta a esta tabla, si no devuelve resultados o devuelve un número de respuestas menor al que realmente hay, es que hay mensajes sin leer en ese post en concreto.

Esta tabla se actualizará cuando el usuario entre en el post, si no existe la entrara pada el user y post actual se creará, y si ya existe se actualizará el número de respuestas.

Esto tiene inconvenientes, si se borra un mensaje de un post puede generar incoherencias y marcar como ya leído un mensaje que no lo está.

La opción de la fechas sigue siendo muy factible, en ese caso en vez del número de respuestas guardaríamos la fecha del último acceso, para comprobar si hay mensajes sin leer en un pos tendríamos que mirar si existe algún mensaje cuya fecha sea mayor a la fecha de último acceso (fecha y hora, evidentemente).

Mirándolo bien ahora, me sigo quedando con la opción de la fecha y hora, es más segura y no creo que sea más pesada en rendimiento que guardar el número de respuestas.
  #13 (permalink)  
Antiguo 22/01/2008, 09:40
 
Fecha de Ingreso: noviembre-2007
Mensajes: 203
Antigüedad: 16 años, 5 meses
Puntos: 0
Re: creacion de un foro: deteccion de posts nuevos

ok, probare todas las sugerencias planteadas a ver cual me sirve mejor.
gracias a todos salu2 :D
  #14 (permalink)  
Antiguo 22/01/2008, 10:11
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 17 años, 5 meses
Puntos: 23
Re: creacion de un foro: deteccion de posts nuevos

Y a todo esto,
porque no usas un foro pre-fabricado y listo!!
xD
es otra opcion :P

Saludos
__________________
Recuerda usar el highlight para mostrar código
mauricioblint.com
  #15 (permalink)  
Antiguo 22/01/2008, 14:26
 
Fecha de Ingreso: noviembre-2007
Mensajes: 203
Antigüedad: 16 años, 5 meses
Puntos: 0
Re: creacion de un foro: deteccion de posts nuevos

es quiero hacer uno yo mismo y distribuirlo en la web gratis y que tenga todas las mejores caracteristicas y opciones de los foros tradicionales y algunas nuevas que se me ocurran.
  #16 (permalink)  
Antiguo 22/01/2008, 14:34
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 17 años, 5 meses
Puntos: 23
Re: creacion de un foro: deteccion de posts nuevos

Muy bien entonces,
dale para adelante ;)
__________________
Recuerda usar el highlight para mostrar código
mauricioblint.com
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 16:29.