Buenas, tengo un chat el cual funciona cargando cada 2 segundos el archivo entero de chat, lo cual es algo molesto y consume recursos. Por no decir que no permite al usuario ver los mensajes antiguos ya que cada 2 seg este se tiraba hacia abajo.
La idea que he tenido a sido que en vez de eso, solo se ejecute esa consulta si hay un nuevo mensaje en el mismo minuto. La duda ahora es... ¿Como puedo hacer que la consulta se ejecute cada segundo?
Se que esto seguirá gastando recursos, pero no tantos y además, hace más fácil a los usuarios leer los mensajes antiguos.
El código que tengo sería este:
Código PHP:
<?
$fechach=date("d-m-y H:i");
$chatsnuv = mysql_query("SELECT * FROM chats WHERE fecha='$fechach'") ;
$cchatsnuv = mysql_num_rows($chatsnuv);
if($cchatsnuv!='0'){
?>
$('.chats').load('../core/load/chat.php');$('.chatsc').slimScroll({scrollTo : '2000000px', alwaysVisible: false});
<?
}
?>
Esto va dentro de un javascript.
Lo solucioné de otra forma, aunque no resuelve el caso de los recursos, pero he hecho que cada segundo se cargue el archivo chat.php y en este haya un condicional, si hay mensaje nuevo, este baja hacie abajo y muestra mensajes, si no, solo muestra mensajes por lo que el usuario a simple vista no notará la carga del archivo.