Pues para empezar, una base de datos, una tabla usuarios para guardar el contenido del usuario por ejemplo, y otra con los mensajes, de ahí necesitas hacer el chat en si, despues si quieres poner smileys y todo eso necesitarás funciones con str_replace para reemplazar y lo más importante de todo, dos funciones ajax, una para hacer la insercion que sería una cosa así.
Código Javascript
:
Ver original$(document).ready(function(){
$("#el id del form que quieres enviar").submit(function(e){
e.preventDefault();
$.ajax({
url: $(this).attr("action"),
type: $(this).attr("method"),
data: $(this).serialize(),
beforeSend:function(data){
/*un loader mientas envía la info*/
},
error: function(){
alert("Estas viendo esto por que fallé");
alert("Error");
},
success:function(data){
/*cuando salga bien si quieres mostrar un mensaje
en este caso poco necesario*/
}
});
});
return false;
});
Con eso haces el envío del msge escrito con ajax jquery, despues lo debes recuperar en php, y seguido debes mostrarlos en pantalla con algo así.
Con esta función cargas el contenido recuperado de la base de datos en un div y lo muestra sin necesidad de recargar la página.
Código Javascript
:
Ver originalsetInterval(function() {
$("#el id del div donde quieras que se carguen los mensajes").load("el script php donde recoges la info para mostrar", {id_entrada:+$('#id_entrada').val(),ultima:+$('#ultima:last').val()},function(){//
esto anterior solo si desea coger algun dato
});
},1000);
se usa la función setInterval de js y le das 1 segundo(1000), esta función hace que cada segundo te vaya cogiendo la info de la base de datos y la muestre donde tu le digas sin necesidad de recargar.
Espero que hayas entendido algo, los tiros van por ahí, cualquier mejora por favor comenten que nunca está de más aprender cosas nuevas.
Con todo esto dicho siempre digo lo mismo, lo mejor para un chat es desde mi punto de vista flash, pero bueno, yo por ahí no te puedo guiar, saludos.