Bom o chat em si é composto de dois frame ou mais ! Em um desses frames será onde aparecerá as mensagens, axo que isso todo mundo sabe né ?! e o outro onde vai ser mandado as mensagens! No Formulário onde vai ser mandado as mensagens coloque somente o campo mensagem, e um submit. E insira em um banco, e dê um nome especifíco, vamos supor: tabela: chat 1º campo 'id' auto increment. 2º campo 'mensagens' text mesmo. Só isso com essa tabela você cria o seu chat. Agora na página onde será visualizado as mensagens, crie algo que atualize essa página a cada instante, e coloque um código que guarde o ultimo id do campo mensagem, e coloque um código verificando se há algum 'id' maior daquele gravado se tiver faça uma condição para poder mostrar essa mensagem. Basicamente é isso.