Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Alex Hernandes

diversas s

Recommended Posts

Dai galera... beleza?

 

to usando bastante o ajax agora, mas tenho algumas duvidas sobre ele e sobre duvidas diversas.

primeiro sobre ele.

 

Eu vi outro tópico mas nenhuma das soluções deu certo, eu to com um problema muito grande com acentuação. Quais são as soluções pra isso? Tentei uma linha do JS: xmlhttp.setRequestHeader("Content-Type", "text/html; charset=iso-8859-1"); mas não deu certo, infelimente, tentei também uma tag do html, mas não foi também.

 

Na página que eu chamar pelo ajax eu posso colocar js? ele irá funcionar certo?

 

Fiz um sistema de atendimento online com ajax, eu coloquei setTimeout("VerConversa()",1000) ele funciona perfeitamente, mas ele quando a conversa se estende, alias, quando passa para a quarta linha, ele começa a piscar. Teria outra coisa para usar no lugar? sem que a tela fique piscando?

 

Ainda sobre o atendimento, to usando div para exibir as mensagens trocadas, e no div coloquei um overflow, para se começar a ficar muito grande ele coloca uma barra de rolagem, como eu faço para manter essa barra de rolagem lá em baixo? eu tentei alguns códigos na internet mas não deu muito certo, coloquei uma caixa de texto lá no fim, e coloquei um focus() mas pelo atualizar da página ele perde o focus e não fica lá em baixo nunca. Alguem teria uma solução??

 

Valeu ai galera.

Um abração..

Compartilhar este post


Link para o post
Compartilhar em outros sites

mano,você tá dando releoad na tela?posso ajudar você... se quizer me mandar um e-mail (lucas.cardozo@gmail.com)[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu uso o bloco de notas mesmo...

sem duvida o melhor que ja inventaram se colorisse o codigo e autocompletasse tambem parave de usar o DW

Compartilhar este post


Link para o post
Compartilhar em outros sites

nossa!!! que resposta boa v6 deram pro kra heim!!!

 

"eu uso o boloco de notas" ... isso deve ter resolvido o problema dele. (ninguém merece)

 

 

bom, falando sério e indo ao foco do post, por e-mail eu respondi ao nosso amigo "Alex Hernandes" e lhe dei algumas dicas. Pedi p/ que ele me retornasse dizendo se a dica funcionou ou não, mas como ele não o fez, vou postar aqui para que outros possam ver.

 

Minha pergunta a Alex Hernandes:

você faz a requisição a uma página que contém os dados a serem exibidos e imprime nessa div certo?

 

mas mano, como você faz isso? você pega o conteúdo todo, ou só as ultimas mensagens?

o ideal era você pegar só as últimas!

Resposta:

é ... eu usei o ajax para abrir uma página que lá contem toda a conversa dos dois.

depois que ele pega ele joga na div.

 

é que num atendimento on-line, mesmo num bate-papo, acho que seria bom exibir toda a conversa, mesmo por causa da consulta, entende? E para fazer isso to usando o setTimeout("VerConversa()",1000), mas ele fica piscando a tela.

 

a rolagem funciona com o div??

minha solução:

Mano, deixa eu explicar.

O q você tá fazendo tá um poco errado.

 

Pensa só, se a conversa se extener, no momento que você "apaga" o conteúdo da div e re-escreve toda a conversa dentro dela, a barra de rolagem vai subir e descer. Não sei se você me entendeu.

 

 

Bom, você está gravando a conversa no banco né?

 

 

Como tá isso? Deixa ver se adivinho.

 

tb_suporte

#id_suporte

id_operador

usuario

assunto

 

tb_mensagem

#id_mensagem

id_suporte

de

mensagem

time

 

Bom mano, de um suporte on-line eu tenho essa visão (uma coisa bem básica).

Na tabela "suporte", você grava o nome do cliente (no qual solicita o suporte) e o assunto do mesmo.

 

Na tabela chat, você grava as mensages enviadas do usuário e do operador.

No caso, o campo "de", você diria quem mandou a mensagem (se foi o cliente ou se foi o operador).

 

Bom ae vamos ao AJAX.

 

Na função "VerConversa", você deverá passar o último id_mensagem para que seja feita a consulta no banco de todas as mensagens enviadas após aquele ID. sacou?

 

Fica +/- assim:

 

'SELECT * FROM tb_mensagem WHERE id_mensagem > '.$_GET['idMens'].' ORDER BY time' (isso se for em php. se for em outra linguagem, aew, você muda a var "$_GET['idMens']"

 

Dae essa consulta deverá retornar somente as novas mensagens.

 

Bom, tendo isso no AJAX! Primeiramente você tira o setTimeout (pois isso apenas é exeutado uma única vez) e coloca setInterval:

 

setInterval("VerConversa()",1000) // agora vamos ao q interessa function verMensagem() {	// aki os seus código em AJAX! 	obj = document.getElementById('id-div');	obj.innerHTML = obj.innerHTML + conteudo_novo;	// Sendo que "conteudo_novo" são as novas mensagem 	// agora você manda a barra de rolagem ir lá p/ baixo	obj.scrollTop = obj.scrollHeight;}
sacaram??

 

quem tiver dúvidas... manda e-mail p/ mim (lucas.cardozo@gmail.com)

mas posta a dúvida aki tb, vlw? http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.