Mil gracias @Triby
a este le había estado echando un vistazo y está genial para esta función. De hecho le he implementado algunas sentencias de sql para que guarde los datos en la db a modo de logs ya que tal y como venía no me los guardaba. Ha sido muy fácil de implementar en este sentido.
Donde me pierdo bastante es en cómo saber si un usuario está conectado o no y cuando lo esté dar la opción de abrir la ventana de chat. Actualmente tengo un botón que abre la ventana de chat esté o no conectado el usuario. Mi idea es... si un usuario inicia sesión aparece el botón de chat, sino aparece un botón de que el usuario está desconectado, pero ¿cómo sé si lo está o no?
Gracias de nuevo!