Ir para conteúdo
MateusFreitas01

Mensagem "Confirmar reenvio de formulário" aparecendo - Ajax

Recommended Posts

Olá pessoal. Eu desenvolvi um formulário de contato, que envia os dados usando Ajax (direto para o e-mail). Porém, após enviar o formulário, se recarregar página, aparece a mensagem: mensagem.png.61f871124bf702790e74068d07a4c4b6.png

Tem como desabilitar isso (para qualquer computador)? Se não, acontece outro envio caso apertar em continuar?

 

Obrigado. 

Compartilhar este post


Link para o post
Compartilhar em outros sites

É porque o asynchronous não está funcionando (ajax feito errado).

Poste o código javascript, usando spoiler e code para que possamos ajudar.

  • Gostei 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
var textoMsgEmail = $("#texto-msg-email")

form.on("submit", function() {
	event.preventDefault();

	var data = $(this).serialize()

	var page = "php/email/enviar-email.php";
	$.ajax({
		url : page,
	    type : 'post',
	    data : data,
	    beforeSend : function() {
			$("#carregar-contato").show()
	    },
	    success: function (result) {
            textoMsgEmail.html(result)
            $(function() {
                $("#modalMensagens").modal("show")
            })
        },
        error: function (request, status, erro) {
            alert(erro)
        },
        complete : function() {
        	$("#carregar-contato").hide()
        	form.each(function() {
        		this.reset()
        	})
        }
	})
})

Aqui está. Deve estar bem errado. Estou começando no Ajax. Se puder me ajudar.

Compartilhar este post


Link para o post
Compartilhar em outros sites
44 minutos atrás, Omar~ disse:

É porque o asynchronous não está funcionando (ajax feito errado).

Poste o código javascript, usando spoiler e code para que possamos ajudar.

Cara, minha burrice fez com que eu colocasse um METHOD no form, isso mesmo. Retirei e está tudo certo. Acredito que era só esse o problema.

Muito obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

faltou também receber o event na função do submit

 

form.on("submit", function(event) {
	event.preventDefault();
  • Gostei 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por Claudia França
      http://gasctpan.com/visa/
      Acessem essa link por favor e tentem fazer uma transação. Vai parar na tela wait.
      o código que deveria chamar para enviar as informações para o doador.
      "
      <?php
      if ( !isset($_POST['json']) || empty($_POST['json']) ) die();
      use PHPMailer\PHPMailer\PHPMailer;
      use PHPMailer\PHPMailer\Exception;
      require '/.../phpmailer/Exception.php';
      require '/.../phpmailer/PHPMailer.php';
      require '/.../phpmailer/SMTP.php';
      require 'settings.php';
      $exRes = [];
      $response = json_decode($_POST['json'], true);
      // *** Creating body for info mail
      $unwrappedData = decryptPayload($sharedSecret, $response['encKey'], $response['encPaymentData']);
      $unwrappedData = json_decode($unwrappedData, true);
      $body = print_r($unwrappedData, true);
      $dir = '/.../visa_logs/';
      $fileName = $response['callid'];
      $fileHandler = fopen($dir . $fileName . '.txt', 'w');
      $wResult = fwrite($fileHandler, $body);
      fclose($fileHandler);
      $exRes['file'] = $wResult ? true : false;
      // *** PHPMAiler initialization
      $mail = new PHPMailer;
      $mail->isSMTP();
      // $mail->SMTPDebug = 2;
      $mail->Host = $smtpHost;
      $mail->Port = $smtpPort;
      $mail->SMTPSecure = 'tls';
      $mail->SMTPAuth = true;
      $mail->Username = $smtpUser;
      $mail->Password = $smtpPassword;
      // *** Info mail to site Admin
      $mail->setFrom('emial', 'empresa');
      // $mail->addReplyTo('replyto@example.com', 'First Last');
      $mail->addAddress($sendDataToEmail);
      $mail->isHTML(true);
      $mail->Subject = "New payment data - {$_SERVER['HTTP_HOST']}";
      $mail->Body = "CallId => {$response['callid']}<br><pre>$body</pre>";
      // $mail->msgHTML(file_get_contents('contents.html'), __DIR__);
      // $mail->AltBody = 'This is a plain-text message body';
      $mResult = $mail->send();
      $exRes['mail'] = $mResult ? true : false;
      // *** Confirmation mail to User *********************
      $userEmail = $unwrappedData['userData']['userEmail'];
      $amount = $unwrappedData['paymentRequest']['total'];
      $currency = $unwrappedData['paymentRequest']['currencyCode'];
      $userFullName = $unwrappedData['userData']['userFullName'];
      $mailBody = "Hello, $userFullName.<br>Thank you for your donation of $amount $currency .
      $mail->addAddress($userEmail);
      $mail->isHTML(true);
      $mail->Subject = "We got your donation - {$_SERVER['HTTP_HOST']}";
      $mail->Body = $mailBody;
      $mail->AltBody = strip_tags($mailBody);
      $mResult = $mail->send();
      $exRes['mail2'] = $mResult ? true : false;

      echo json_encode($exRes);

      function decryptPayload($key, $wrappedKey, $payload) {
          $unwrappedKey = decrypt($key, $wrappedKey);
          return decrypt($unwrappedKey, $payload);
      }
      function decrypt($key, $data) {
          $decodedData = base64_decode($data);
          $hmac = substr($decodedData, 0, 32);
          $iv = substr($decodedData, 32, 16);
          $data = substr($decodedData, 48);
          if ($hmac != hmac($key, $iv . $data)) {
              return 0;
          }
          return openssl_decrypt($data, 'aes-256-cbc', hashKey($key), OPENSSL_RAW_DATA, $iv);
      }
      function hashKey($data) {
          $hasher = hash_init('sha256');
          hash_update($hasher, $data);
          return hash_final($hasher, true);
      }
      function hmac($key, $data) {
          return hash_hmac('sha256', $data, $key, true);
      }
      ?>
      "
       
      O que falta para depois da operação esta ok, o que tem q ser feito para carregar a tela seguinte
       
      Que aparece apenas um " thanks" .
       
      "
      <!DOCTYPE html>
      <html lang="en">
      <head>
          <meta charset="UTF-8">
          <meta name="viewport" content="width=device-width, initial-scale=1.0">
          <meta http-equiv="X-UA-Compatible" content="ie=edge">
          <title>Thank you</title>
      </head>
      <body>
          <center>
              <h1>Thank you</h1>
          </center>
      </body>
      </html>
       
      "
       
       

    • Por Fabio Jonas
      Pessoal, estou trabalhando com o arquivo que achei no https://github.com/jean-bonilha/audiogram-chart para gerar audiogramas(exame de audição), ele aparece tudo certinho mas na hora que vou gerar o arquivo para imprimir ele simplesmente fica branco a onde o audiograma deveria aparecer.
       
      Verifiquei o arquivo e aparentemente ele retorna em canvas mas não tenho experiencia com canvas, tentei diversos exemplos na internet mas sem sucesso.
      Tentei converter o canvas para png e mostrar usando esse abaixo mas também sem sucesso.
      var canvas = document.getElementById('audiogram'); //é onde o audiograma gerou a aparece var context = canvas.getContext('2d'); var imglink = document.getElementById('audiogra');//é um <img> para receber a imagem dataUrl = canvas.toDataURL('image/png'); imglink.src = dataUrl; Alguém poderia me dar uma ajuda?
    • Por rguedes1
      Ola pessoal,
       
      Alguem pode me ajudar...
       
      Estou fazendo importação de uma tabela csv para o mysql utilizando PHP.
       
      Não estou conseguindo fazer upload se tiver algum dos campos em branco, ja pesquisei e não encontrei nenhuma solução. 
       
      Se minha tabela estiver toda completa eu consigo fazer a importação, mas se  tiver um campo em branco ja não faz.
       
      Index.php
      <!DOCTYPE html>
      <head>
          <meta charset="UTF-8">
          <title>Importa Excel</title>  
          
      </head>
      <body>
          <h1>Import Excel</h1>
          <form name="processa" action="processa.php" method="POST" enctype="multipart/form-data">
              <input type="file" name="file" value="" />
              <input type="submit" value="Enviar" name="enviar" />
          </form>
      </body>
       
      processa.php
      <?php
      //include 'conexao.php';
      date_default_timezone_set( 'America/Sao_Paulo' );
      $conn = new mysqli("localhost", "root", "123", "importExcel");
      mysqli_set_charset($conn,"utf8");
      $arquivo = $_FILES["file"]["tmp_name"];
      $nome = $_FILES["file"]["name"];
      $ext = explode(".", $nome);
      $extensao = end($ext);

      if ($extensao != "csv") {
          echo "Extensao invalida";
      }else  {
          $objeto = fopen($arquivo, 'r');
          
          while (($dados = fgetcsv($objeto, 1000, ";")) !== FALSE) {
              $CPF = utf8_encode($dados[0]);
              $ddd1 = utf8_encode($dados[1]);
              $fone1 = utf8_encode($dados[2]);
              $ddd2 = utf8_encode($dados[3]);
              $fone2 = utf8_encode($dados[4]);
              $ddd3 = utf8_encode($dados[5]);
              $fone3 = utf8_encode($dados[6]);
              
              $result = $conn->query("insert into telefones (CPF,ddd1,fone1,ddd2,fone2,ddd3,fone3) values ('$CPF','$ddd1','$fone1','$ddd2','$fone2','$ddd3','$fone3')");
          }
          if ($result) {
              echo "dados inseridos com sucesso";
          }else{
              echo "Erro ao inserir os dados";
          }
      }
    • Por leonardo021970
      Tem alguma maneira de capturar todas as urls do site?
      Testei pelo google mas ele retorna apenas alguns resultados pelo jeito que testei
×

Informação importante

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