Ir para conteúdo

Arquivado

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

BigJhow

Executar script antes do usuário sair da página

Recommended Posts

Numa página, como fazer com que uma requisição MySQL seja feita quando o usuário sair da página (antes disso, lógico :P)?

 

Obs.: Não gostaria de usar o método de PopUp pois vários usuários possuem um bloqueador de popups =/. Se tiver como burlar, postae

Compartilhar este post


Link para o post
Compartilhar em outros sites

Explique melhor!

 

Tipo não parar a execução do script mesmo que ele saia da página?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pelo o que eu entendi, quando o usuário sair da página (Clicar em um outro link, ou fechar o navegador) é para executar algum comando SQL, certo?

 

Se for isso, você pode usar o evento onUnload do body para chamar alguma instrução Ajax.

 

Se você não souber Ajax pode falar q a gente tenta dar uma força ;)

 

Só tem um porém: O evento onUnload é executado toda vez que a página é descarregada, ou seja, se você atualizar a página mesmo estando nela o evento é executado..

 

Tente explicar o problema pra ver se podemos te dar uma força, ok? ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se eu entendi direito, é para usar alguma função do Ajax no onUnload (chamando uma página via Ajax.Updater usando prototype) ou colocar o script diretamente no onUnload?

 

acho que comandos php no OnUnload não funcionam... Alguém tem alguma sugestão a mais?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, o que eu tinha imaginado era chamar uma função em Javascript no evento onunload do body.

Essa função Javascript, por sua vez, chamaria uma função PHP

essa função PHP executaria o comando SQL.

 

Mas isso talvez não sirva por causa daquilo q eu disse: O evento onunload é executado quando a página é descarregada, ou seja, ele também é executado quando você atualiza a página.

 

Uma vez eu tive que fazer algo parecido com isso, mas no final o que eu acabei fazendo foi colocar uma função Ajax que é executada no background de tempos em tempos.

 

Tente explicar o seu problema. De repente temos outras soluções.

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.