Ir para conteúdo
Fórum Script Brasil
  • 0

Executar um script php automaticamente se sair da pág


heros

Pergunta

Galera do forum eu tenho este script que que redireciona o usuario para outra página se ele sair ou fexar a pagina atual:

<script type="text/javascript">

$(window).unload(function() {

$.ajax( {

url: "paginadafuncao.php"

});

});

</script>

Eu queria executar este codigo só se o usuário saisse da pagina, indo para outra ou se fechase a pagina, mais se ele executase um formulario que levasse a outra página ele não executasse o codigo.

Deixeme explicar o que estou tentando fazer:

Eu tenho um formulario de cadastro de produtos, e dentro deste formulario eu tenho uma iframe com um formulario de upload, este upload funciona tipo a quela do balcão, o usuario seleciona uma imagem e automaticamente já é cadastrada no banco de dados, e ai é exibido em baixo do formulário a imagem que foi selecionada, e o formulario é liberado para escolha de outra imagem que faz o mesmo prosesso, o que acontece é que se o usuario não completar o formulario, cadastrando o produto, as imagens que foram selecionadas ficam no banco de dados e na pasta sem uma referência para deletar e assim sobrecarregando o banco de dados e o servidor.

Com este codigo, se o usuario sair da página ele chama uma pagina que pega um codigo unico para o produto e a imagem que já é automaticamente selecionado ao se entrar no formulario para o cadastro de produtos, e ai de posse desse codigo a imagem e deletada ao sair da página, até ai tudo bem funciona sertinho, o problema é que mesmo terminando o formulario cadastrando o produto o codigo é executado e deleta as imagens.

Como é que eu digo que se existir a ação do formulario não executar o codigo?

Dizer que se existe o post do formulario executar eu sei, agora dizer que se existir o post não executar eu não sei!

Se alguém tiver alguma ideia com a logica da programação eu fico agradecido.

Editado por heros
Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

Boa tarde, tenta assim, não sei se vai ajudar

<html>

<head>

<title></title>

<?php

if( ! $_POST )

{

?>

<script>

window.onbeforeunload = function()

{

alert( 4 );

}

</script>

<?php

}

?>

</head>

<body>

</body>

</html>

Link para o comentário
Compartilhar em outros sites

  • 0

Problema resolvido, pode fechar o post.

Tai a baixo o codigo pra quem quizer:

<script type="text/javascript">

$(document).ready(function(){

saiu_da_pagina = true;

$("#submit").click(function(){

$("#form").submit();

saiu_da_pagina = false;

//Ou seja, aqui eu verifico se o usuário submeteu o formulário

});

$(window).unload(function(){

if(saiu_da_pagina == true)

//aqui você executa as funções que você quer. Abaixo eu coloquei um alert pra testar!

$.ajax( {

url: "pagina.php"

});

});

});

</script>

Editado por heros
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,7k
×
×
  • Criar Novo...