Ir para conteúdo

POWERED BY:

Arquivado

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

Biel.

Botão Enviar está no automático. Como interromper a execução dele após

Recommended Posts

Cara você acertou em cheio de primeira. Parabéns. Muito bom.

O que vocês fizeram está corretíssimo, o problema é que eu não consegui transmitir a minha ideia e por este motido o objetivo ainda não foi alçancado. Percebo que o contador javascript é zerado com refresh na página. Minha ideia é usar o refresh mesmo. Coloquei um contador php na página contato.php ou seja toda vez que o script é executado o formulario é enviado e o refresh se encarrega de voltar para a página anterior e o contador de visitas php se encarrega de contar o número de visitas na página contato.php

 

A questão está aqui: Entrei na página contato.php certo? Não quero que o script seja executado por ele mesmo. Quero que o script seja executado quando eu clicar no botão ENVIAR. Uma vez clicado quero que o envio permaneça no automatico, tipo: cliquei, enviou, deu refresh na página 5 segundos, voltou para contato.php e o script se encarrega de enviar de novo, depois ocorrerá refresh na página, voltando pra página anterior e o processo fica assim até eu decidir parar a execução do script clicando no botão PARAR. E se porventura eu quiser continuar com o envio automatico eu clico no botão ENVIAR.

 

IMP: O que eu quero fazer com iframe não funciona. Em relação o form, gostaria que ficasse do jeito que está.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="refresh" content="5; URL=http://localhost/aprendiz/contato.php" />
<title>Documento sem título</title>

<script type="text/javascript">
var qtd = 0;
var limit = 2;
var seconds = 5;

function submeter(){ 
  if( qtd < limit ){
    document.forms.tetete.submit();
  }
qtd++;
}
function start_sending(){
    seconds *= 500;
    window.setInterval(function(){submeter()},seconds);
}

function stop_timer(){
    qtd = limit;
}

</script>


</head>
<body onload="start_sending();">

<form action="formulario.php" method="post" name="tetete">

<input type="submit" name="enviar" value="ENVIAR" />
<input type="button" name="" value="PARAR" onclick="javascript:stop_timer();" />

</form>


</body>
</html>

 

 

 

 

enviar emails eventualmente pra meus clientes

Boa noite a todos. PPP hinon bem lembrado! Esqueci desse detalhe. Veja as duas páginas na integra. Obrigado!

 

Esta é a página contato.php As duas páginas contato.php e formularioenviado.php estão dentro da pasta aprendiz.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Documento sem título</title>

<script type="text/javascript">
var qtd = 0;
var limit = 2;
var seconds = 5;

function submeter(){ 
  if( qtd < limit ){
    document.forms.tetete.submit();
  }
qtd++;
}
function start_sending(){
    seconds *= 500;
    window.setInterval(function(){submeter()},seconds);
}

function stop_timer(){
    qtd = limit;
}

</script>

</head>
<body onload="start_sending();">

<form action="formulario.php" method="post" name="tetete">

<input type="submit" name="" value="ENVIAR" onclick="javascript:start_timer();" />
<input type="button" name="" value="PARAR" onclick="javascript:stop_timer();" />

</form>


</body>
</html>

 

Esta é a página formularioenviado.php

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="refresh" content="5; URL=http://localhost/aprendiz/contato.php" />

<title>Documento sem título</title>       

</head>

<body>

<h1>Formulário Enviado com Sucesso!</h1>
  
</body>
</html>

 

 

 

No post #2, o primeiro passo era remover o meta refresh, pois não faz sentido algum ter na página..

 

O JavaScript cuidará da temporização..

 

Obviamente necessita do iframe para enviar o formulário de forma oculta visualmente.

 

A página /aprendiz/contato.php é a mesma página que contém script ou é outra página ?

É a mesma página. <meta http-equiv="refresh" content="5; URL=http://localhost/aprendiz/contato.php" /> coloquei na pagina errada. Meta "refresh" tem que ficar na página formularioenviado.php

Compartilhar este post


Link para o post
Compartilhar em outros sites

então a lógica final é redirecionar para "formularioenviado.php" quando o usuário interromper o envio (botão "parar") ou quando atingir o limite de envios (5 envios), certo ?

 

nesse caso basta criar uma função que redirecione quando for interrompido ou quando chegar ao limite de envios..

Compartilhar este post


Link para o post
Compartilhar em outros sites

então a lógica final é redirecionar para "formularioenviado.php" quando o usuário interromper o envio (botão "parar") ou quando atingir o limite de envios (5 envios), certo ?

 

nesse caso basta criar uma função que redirecione quando for interrompido ou quando chegar ao limite de envios..

Boa tarde a todos. Hinom desde já agradeço à atenção e colaboração / ajuda de vossa parte. Veja: Assim que entro na página contato.php o script se encarrega automaticamente de enviar o formulario sem eu clicar no botão ENVIAR. Seria bem melhor uma solução de envio automatico quando eu resolvesse clicar no botão ENVIAR. Veja: O script está enviado os dados do formulario sem eu pedir. OBS: Quando eu clico no botão PARAR o script obedeçe o comando, ele para. E se eu clicar no botão ENVIAR, o script executa o envio automatico normalmente.

O único problema é que assim que entro na página contato.php o script começa a enviar os dados do formulario automaticamente sendo que eu não pedi, não executei nenhuma ação, mas o script está projetado para fazer isso.

 

Veja: Tenho uma 3º terceira página com nome de formulario.php que recebe os dados da página contato.php

 

a página formulario.php está dizendo que após eu clicar no botão ENVIAR que está na página contato.php exiba o conteúdo da página formularioenviado.php e o conteudo desta página é: <h1>Formulário Enviado com Sucesso!</h1>

O único detalhe é : Dizer ao script que ele execute à ação de envio automatico, só quando o botão ENVIAR for clicado. Grato!

 

Esta é a página formulario.php

<?php
$exibir_apos_enviar='formularioenviado.php';
echo "<script>window.location='$exibir_apos_enviar'</script>";
?>

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.