Otro detalle ..
Para realizar un chat sin "aparente" refresco de página .. puedes usar técnias de "remote scripting".
Ejemplo:
http://www.ashleyit.com/rs/main.htm
Todo depende de la cantidad de usuarios activos al instante que quieras para tu chat .. Todas las soluciones "php" para un chat suelen sobrecargar en exceso al serividor HTTP y hasta tu BD si lo usas para gestionar el própio flujo de mensajes del chat .. Por eso, lo ideal es usar IRC par un chat .. que para eso se inventó ese protocolo.
Un saludo,