Foro de elhacker.net

Programación => Desarrollo Web => Mensaje iniciado por: MiguelCanellas en 4 Agosto 2019, 23:28 pm



Título: [Pregunta]: Notificaciones vistas
Publicado por: MiguelCanellas en 4 Agosto 2019, 23:28 pm
Buenos días...

Estaba haciendo un sistema de notificaciones donde están formados por los datos: id_note, id_user, fecha, visto.

La idea es que el sistema muestre notificaciones con un LIMIT 30 es decir mostrara desde el registro (posición: 0) un total de 30 notificaciones... luego el usuario si da click en un botón... cargar más resultados ya la posición de partida será 30 y el recorrido pasará a 60. Esto ya está hecho y funciona optimo...

Pero mi pregunta es como puedo hacer que las notificaciones que ya se mostraron pasen a tener el dato visto = 1; o visto = true;

Gracias..


Título: Re: [Pregunta]: Notificaciones vistas
Publicado por: @XSStringManolo en 5 Agosto 2019, 00:31 am
Puedes pasar algo de código de ejemplo?

Exactamente que entiendes por notificación vista? Cuando hagan click? Cuando acabe de cargarse el contenido al que hace referencia la notificación?

Si es lo que entiendo, con un if una funcion y una variable lo haces en javascript.
Pseudocódigo:
si (usuarioHizoClickEnNotificacion())
{
boolNotificacionX = true;
}

Si posteas el código será más fácil ayudar.



Título: Re: [Pregunta]: Notificaciones vistas
Publicado por: MiguelCanellas en 6 Agosto 2019, 17:42 pm
¿Como estas manolo? Gracias por responder a el tema.

La verdad yo pensé en hacer lo siguiente, que cada vez que la persona vaya mostrando registros/datos se edite este dato es decir, el visto de dicho dato en este caso notificación sea "visto = 1";

Se me ocurrió ahora que podría hacer de la siguiente manera:

Código
  1. $resultados = notificaciones::Mostrar_Notificaciones($id_user);
  2.  
  3. if(!empty($resultados))
  4. {
  5.     foreach($resultados as $res)
  6.    {
  7.          notificaciones::Editar_Notificacion_Visto($res['id_note'], 1);
  8.          // $res['id_note'] = Obtener la id de la notificación
  9.          // El 1 significa que se modificara el visto de un 0 a un 1
  10.          // Acá iria más código por ejemplo, "Estas son las ultimas ofertas" o cosas así... no es muy relevante en este contexto.
  11.    }
  12. }
  13.  

Quería saber sus opiniones sobre este código o si hay formas más optimas de hacerlo.
El código de arriba se puede mejorar, por ejemplo preguntar antes de editar o marcar como vista una notificación, preguntar si visto == 0 entonces se edita pero si ya fue vista que no la edite nuevamente. Creo yo que me puedo ahorrar varias consultas innecesarias.

Gracias!!!