Ir para conteúdo

POWERED BY:

Arquivado

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

Monkey D. Luffy

Processar uma pagina com Jquery e mostrar o retorno

Recommended Posts

Bom dia eu tenho uma funçã jquery que envia dados de uma pagina para outra via post e retorna o resultado dela na mesma página desta forma:

 

$("#form_comentario").validate({   	      
        // Define as regras
        rules:{
           "nome":{
               // campoNome será obrigatório (required) e terá tamanho mínimo (minLength)
                required: true, minlength: 5
            },
            "msg":{
                // campoMensagem será obrigatório (required) e terá tamanho mínimo (minLength)
                required: true, minlength: 5
            }
        },
        // Define as mensagens de erro para cada regra
        messages:{
            "nome":{
                required: "Digite o seu nome",
                minlength: "O seu nome deve conter, no mínimo, 5 caracteres"
            },
            "msg":{
            required: "Digite o seu comentário",
               minlength: "O seu comentário deve conter, no mínimo, 5 caracteres"
            }
        },
        submitHandler: function(){
                   //Função mural de recados
      	 var nome = $('#nome').val();
	 var msg = $('#msg').val();

	$(".formulario_comentario").html('<span id="spanEnviandoComentario"><img src="imagens/loader.gif" alt="" /></span>');

	$.post('cadastra_comentario.php', {

		nome_post: nome,
		msg_post: msg,

	}, function(res_cadastra){			
		$(".formulario_comentario").html(res_cadastra);

		$.post('atualiza_comentario.php', function(atualiza_comentarios){			
			$("#comentarios ul").html(atualiza_comentarios);			
		});

	});

	return false;
              }
    });	

 

<!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="Content-Type" content="text/html; charset=ISO-8859-1"/>  
<?php
require_once 'database/mysql.php';
$db = new Mysql();
?>
</head>
<body>
<div id="box">
<div id="comentarios">
   <h1>Últimos Comentários</h1>    
   <ul>
<?php	
$selecionaComentarios = $db->query("SELECT * FROM comentarios ORDER BY comentario_id DESC LIMIT 30")->fetchAll();
$contarComentarios = $db->rowCount();


if($contarComentarios == 0){
	echo "		
	<li><strong>Portal da Ressaca - Em: " . date('d/m/Y') ." - Disse: </strong>
       <span>Nenhum comentário até o presente momento. Seja o primeiro a comentar!!! </span>
       </li>		
	";
} else{		
	if ($db->rows >= 1) {		
	   $comentarios = $db->data;
      		 foreach ( $comentarios as $res_comentario )
       		{				
			 $c = ( object ) $res_comentario;				 		 

?>
      <li><strong><?= utf8_decode($c->comentario_nome) ?> - Em: <?= date('d/m/Y H:i:s', strtotime($c->comentario_hora));?> - Disse: </strong> 
       <span> <?= utf8_decode($c->comentario_msg) ?> </span>
      </li> 
   <?php 
	}
	}
}	
?>   
   </ul>    
   </div><!--// fecha comentários -->

   <div id="formulario_comentario" class="formulario_comentario">
   <form id="form_comentario" name="form_comentario"  >        
<div class="inputs">
	<span id="labelComentarios"><div><label for="nome" >Nome:</label></div>
       <input type="text" name="nome" id="nome" maxlength="50" ></input></label>
       <span id="labelComentarios"><div><label for="msg">Comentário:</label></div>
       <textarea name="msg" cols="1" rows="1" id="msg"></textarea></span>
     </div>
     <br/>
      <input id="botoesComentarios" type="submit" name="enviar" value="Enviar" class="btn" />
      <input id="botoesComentarios" type="reset" name="limpar" value="Limpar"  /> 
   </form>
   </div><!--// fecha formulario -->

</div>
</body>
</html>

 


<?php @header('Content-Type: text/html; charset=ISO-8859-1', true);
require_once 'database/mysql.php';
$db = new Mysql();

$nome = @$_POST['nome_post'];
$nome = wordwrap($nome, 70, " ",1);
$msg = @$_POST['msg_post'];
$msg = wordwrap($msg, 70, " ",1);
$hora = date('Y-m-d H:i:s');



if ((empty($nome)) or (empty($msg))) {
$cadastra = "";
}
else
{
$cadastra = $db->query("INSERT INTO comentarios (
					comentario_nome, comentario_msg, comentario_hora
					) VALUES (
					'$nome', '$msg', '$hora'
					)");
}


if ($cadastra){
 	echo utf8_decode('<span id="spanEnviandoComentario">Comentário enviado com sucesso!</span>');
echo utf8_decode('<span id="spanEnviaNovoComentario"><a href="#" onclick="abrirPag(\'comentario.php\');">Faça outro comentário</a></span>');
} else{
echo utf8_decode('<span id="spanEnviandoComentario">Erro ao enviar comentário!</span>');	
echo utf8_decode('<span id="spanEnviaNovoComentario"><a href="#" onclick="abrirPag(\'comentario.php\');">Tente novamente</a></span>');
}?>

 

Ou seja a função é ativada quando eu clico no botão enviar e a função processa a página comentario_cadastra e joga a mensagem caso de certo para a mesma página onde eu estou enviado....

 

estou tentando fazer a mesma coisa para enviar e-mail porem não estou conseguindo e acho que o problema é na função pois ela fica travada no icone carregando.

Estou fazendo da seguinte forma a função:

 

$("#form_contato").validate({   	      
        // Define as regras
        rules:{
           "nome":{
               // campoNome será obrigatório (required) e terá tamanho mínimo (minLength)
                required: true, minlength: 5
            },
			"email":{
               // campo email será obrigatório (required) e terá tamanho mínimo (minLength)
                required: true, minlength: 5, email: true
            },
			"assunto":{
               // campo assunto será obrigatório (required) e terá tamanho mínimo (minLength)
                required: true, minlength: 5
            },
            "msg":{
                // campoMensagem será obrigatório (required) e terá tamanho mínimo (minLength)
                required: true, minlength: 5
            }
        },
        // Define as mensagens de erro para cada regra
        messages:{
            "nome":{
                required: "Digite o seu nome",
                minlength: "O seu nome deve conter, no mínimo, 5 caracteres"
            },
			"email":{
                required: "Digite o seu e-mail",
                minlength: "O seu e-mail deve conter, no mínimo, 5 caracteres",
                email: "O campo e-mail deve conter um email válido"
            },
			"assunto":{
                required: "Digite o assunto",
                minlength: "O assunto deve conter, no mínimo, 5 caracteres"
            },
            "msg":{
            required: "Digite a sua mensagem",
               minlength: "A sua mensagem deve conter, no mínimo, 5 caracteres"
            }
        },
        submitHandler: function(){

                var enviar = $('#enviar').val();
         	 var nome = $('#nome').val();
	 var email = $('#email').val();
	 var assunto = $('#assunto').val();
	 var msg = $('#msg').val();

	$(".formulario_contato").html('<span id="spanEnviandoContato"><img src="imagens/loader.gif" alt="" /></span>');

	$.post('envia_contato.php', {

		enviar_post: enviar,
		nome_post: nome,
		email_post: email,
		assunto_post: assunto,
		msg_post: msg,

	});

	return false;
              }
    });	  

 

Alguem pdoeria dar uma ajuda?

Compartilhar este post


Link para o post
Compartilhar em outros sites

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.