Jump to content

Recommended Posts

Boa tarde,

 

Gostaria de ajuda!!!  :tired:

 

Para  ocultar do usuário o refresh que está no arquivo "envio_pesquisa.php",

pois ele direciona para pagina, só que não sei como vincular o submit que está no "contato_pesquisa.php" com o arquivo "ajax_pesquisa.js",

teria como alguém me ajudar??

 

 

OBS: Gostaria apenas que o formulário desse um reset deixando os campos em branco e não saísse da pagina.

 

 

 

ajax_pesquisa.js

contato_pesquisa.php

envio_pesquisa.php

Share this post


Link to post
Share on other sites

você vai usar algum framework javascript um exemplo usando jquery:

 

$(function(){
    $('#formulario').submit(function(){
		$.post( "pasta/pagina.php", function(e) {
 			$( "#resultado" ).html(e);
		});
      	//aqui impede do formulário ser postado
      	return false;
    });
});

//Api post Jquery:
//https://api.jquery.com/jquery.post/

 

  • +1 1

Share this post


Link to post
Share on other sites

Boa tarde, obrigada me ajudar, já consegui aki rsrsr... 

Faltava uma função no código js.... 

 

Os arquivos funcionando estão em anexo. 

 

 

Arquivo do formulário em html.

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="pt-br" xml:lang="pt-br">
	<head>
		<title>Formulário de contato</title>
	</head>
	
	
	
	<body>
		<form id="simples-formulario-ajax">	
			<table class="contato">
				<tr>          <br><br><br>
					<td><label  for="nome" >Nome </label></td>
					<td><input  type="text" name="nome" id="nome" class="  " placeholder="Digite seu nome" required autofocus></td>
				</tr>
				<tr>
					<td><label class="contato" for="email">Email</label></td>
					<td><input class="contato" type="text" name="email" id="email" class=" " placeholder="seu@email.com.br" required></td>
				</tr>
				<tr>
					<td><label class="contato" for="assunto" id="assunto">Assunto:</label></td>
					<td><select class="contato" name="assunto" id="assunto">
								<option value="Sala de Pesquisa"> Sala de Pesquisa </option>
						</select></td>
				</tr>
				<tr>
					<td><label class="contato"    for="mensagem">Mensagem:</label></td>
					<td><textarea class="contato" name="mensagem" id="mensagem" cols="30" rows="10"></textarea></td>
				</tr>
			</table>
			<button class="contato btn btn-red"  type="submit" id="enviar">Enviar</button>

			<input type="hidden" id="metodo" value="formulario-ajax">
		</form>
		
		
		<!-- JAVASCRIPT -->
			<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
			<script src="http://culturaniteroi.com.br/macniteroi/cod/contato/formulario.js"></script>
		<!-- JAVASCRIPT -->
	</body>
</html>

 

Arquivo PHP, que faz envio da mensagem para o e-mail.

<?php
	
//Variáveis
$nome = $_POST['nome'];
$email = $_POST['email'];
$assunto = $_POST['assunto'];
$mensagem = $_POST['mensagem'];
$data_envio = date('d/m/Y');
$hora_envio = date('H:i:s');

// Corpo E-mail
  $arquivo = "
    <html>
    <b>Nome:</b>$nome
    <br><br>   
    <b>E-mail:</b><b>$email</b>
    <br><br>
	<b>Assunto:</b>$assunto
	<br><br>
    <b>Mensagem:</b>$mensagem
    <br><br>
    Este e-mail foi enviado em <b>$data_envio</b> às <b>$hora_envio</b>
    <br><br>
    </html>
  ";

  // emails para quem será enviado o formulário
  $emailenviar = "email@gmail.com";
  $destino = $emailenviar;
  $assunto = "Contato via site ...";

  // É necessário indicar que o formato do e-mail é html
  $headers  = 'MIME-Version: 1.0' . "\r\n";
  $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
  $headers .= 'From: ' . $nome;
  
  $enviaremail = mail($destino, $assunto, $arquivo, $headers);
  if($enviaremail){
  $mgm = "E-MAIL ENVIADO COM SUCESSO! <br> O link será enviado para o e-mail fornecido no formulário";
 
   } else {
  $mgm = "ERRO AO ENVIAR E-MAIL!";
  echo "";
  }
	if(strcasecmp('formulario-ajax', $_POST['metodo']) == 0){
	
		$html = 'Nome: '.$_POST['nome'];
		$html .= "\n";
		$html .= 'Email: '.$_POST['email'];
		$html .= "\n\n Mensagem enviada com Sucesso!.";
		
		echo $html;
	}


?>

 

Arquivo em Javascript que limpa os campos da pagina e não sai da pagina.

	$('#simples-formulario-ajax').submit(function(e){
		e.preventDefault();
		
		if($('#enviar').val() == 'Enviando...'){
			return(false);
		}
		
		$('#enviar').val('Enviando...');
		
		$.ajax({
			url: 'formulario.php',
			type: 'post',
			dataType: 'html',
			data: {
				'metodo': $('#metodo').val(),
				'nome': $('#nome').val(),
				'email': $('#email').val(),
				'assunto': $('#assunto').val(),
				'mensagem': $('#mensagem').val()
			}
		}).done(function(data){
			
			alert(data);
			
			$('#enviar').val('Enviar');
			$('#metodo').val('formulario-ajax');
			$('#nome').val('');
			$('#email').val('');
			$('#mensagem').val('');
			
		});
		
	});

 

valida-formulario.php

formulario.js

formulario.php

 

 

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By luigiferrari
      Boa noite, estou precisando de uma ajuda...
       
      Peguei um scrip de calendário e estou listando os dados em uma janela modal:

      O que eu gostaria de fazer é: colocar um botão para direcionar para um link onde o usuário poderá editar.
       
      Eu estou tentando várias vezes, já consegui que o botão aparecesse, porém ou aparece vários botões juntos(com todos os id cadastrados) ou aparece assim:

       
       
      Aqui estão os seguintes códigos:
       
       
      <script> $(document).ready(function() { $('#calendar').fullCalendar({ header: { left: 'prev,next today', center: 'title', right: 'month,agendaWeek,agendaDay' }, defaultDate: Date(), navLinks: true, // can click day/week names to navigate views editable: true, eventLimit: true, // allow "more" link when too many events eventClick: function(event) { $('#visualizar #id').text(event.id); $('#visualizar #title').text(event.title); $('#visualizar #start').text(event.start.format('DD/MM/YYYY')); $('#visualizar #Horario_saida').text(event.Horario_saida); $('#visualizar #Horario_retorno').text(event.Horario_retorno); $('#visualizar #Nome').text(event.Nome); $('#visualizar #Motorista').text(event.Motorista); $('#visualizar').modal('show'); return false; }, events: [ <?php while($row_events = mysqli_fetch_array($resultado_events)){ ?> { id: '<?php echo $row_events['id']; ?>', title: '<?php echo $row_events['title']; ?>', start: '<?php echo $row_events['start']; ?>', Horario_saida: '<?php echo $row_events['Horario_saida']; ?>', Horario_retorno: '<?php echo $row_events['Horario_retorno']; ?>', Nome: '<?php echo $row_events['Nome']; ?>', Motorista: '<?php echo $row_events['Motorista']; ?>', },<?php } ?> ] }); }); </script> <div class="row"> <div class="col-md-6"> <div class="panel panel-primary"> <div class="panel-heading"> <h3 class="panel-title painel-title-responsive">Calendário</h3> </div> <div class="panel-body"> <div id='calendar'></div> <div class="modal fade" id="visualizar" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" data-backdrop="static"> <div class="modal-dialog" role="document"> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button> <h4 class="modal-title text-center">Dados do Evento</h4> </div> <div class="modal-body"> <dl class="dl-horizontal"> <dt>Id:</dt> <dd id="id"></dd> <dt>Nome:</dt> <dd id="Nome"></dd> <dt>Local:</dt> <dd id="title"></dd> <dt>Data:</dt> <dd id="start"></dd> <dt>Saida:</dt> <dd id="Horario_saida"></dd> <dt>Retorno:</dt> <dd id="Horario_retorno"></dd> <dt>Motorista:</dt> <dd id="Motorista"></dd> <div class="col-md-7"></div> <div class="col-md-5"> </dl> <a href="entrar.php?="id='id'">a</a> </div> </div> </div> </div> </div> O erro está na parte do "entrar.php="id='id'", mas não consigo fazer com que apareça apenas um botão com o id correto. Pensei em criar uma variável ou algo assim mas não deu muito certo.
      Poderiam me ajudar?
      Agradeço desde já!!!
    • By Marcosvn
      Estou trabalhando em um projeto de sites para escritores. Nesse projeto existem 12 gêneros dentro da tabela "categorias", por exemplo: Poemas, Acrósticos, Crônicas, etc.
       
      Estou com problemas para criar as rotas para os gêneros corretamente. Vamos supor que um usuário publique um texto do gênero Acrósticos com título: Flores do campo.
       
      A URL está sendo gerada assim: site.com/Acrósticos/flores-do-campo/
       
      Mas eu nao quero que as categorias venham com letra maiscula e acentos na url, fora em outras partes do site. Sendo assim, qual melhor método pra resolver essa situação ?
       
      Criar 12 rotas para cada categoria e puxar apenas o slug do titulo dinamicamente ? ou remover os acentos e letras maisculas na hora de gerar a URL ?
    • By vinihhylian0103
      Gostaria de fazer uma área do usuário que recolha os dados dele do banco de dados.
      form action -> login.php
      <meta charset="utf-8"> <?php session_start(); if(!$conect=mysqli_connect('localhost','root','','cadastros')) die ('erro ao conectar'); if (!empty($_POST) AND (empty($_POST['email']) OR empty($_POST['senha']))) { header("Location: index.html"); exit; } $email = $_POST['email']; $senha = $_POST['senha']; $sql = "SELECT * FROM usuarios WHERE email ='$email' AND senha = md5('$senha')"; $resultado = @mysqli_query($conect, $sql); $linhas = mysqli_num_rows($resultado); if($linhas==0) { function myAlert($msg, $url){ echo '<script language="javascript">alert("'.$msg.'");</script>'; echo "<script>document.location = '$url'</script>"; } myAlert("Email ou Senha incorretos! Verifique os dados inseridos!", "/teste_cad/Login/index.html"); } else{ $_SESSION["autenticado"]="rfc822_allowed"; $_SESSION["login"]=$email; header("Location: profile.php");} ?>
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.