Ir para conteúdo

POWERED BY:

Arquivado

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

gust.php

PHP insert sem refresh

Recommended Posts

Meus amigos, estou tentando usar um código para inserir informações em uma base e mostra-las logo em seguida, mais sem sucesso. Já percebi que quando clico no botão enviar, o arquivo insert.php não esta sendo chamado. Alguem pode ajudar ai ????

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript">
 
$(function(){
//Função que ao clicar no botão, irá fazer.
$("#cadastrar").click(function(){
//Irá esconder a div do formulario que é o formularioEmail, com efeito em slow.
$("#formulario").hide("slow");
//Aqui diz que antes de enviar, irá aparecer a div carregando_form, com efeito slow.
beforeSend:$("#carregando").show("slow");
//Pegando os valores que foram digitados no formulário e colocando nas variáveis nome e email.
var texto = $("#texto").val();
var pst = $("#pst").val();
//Enviando as variáveis com os valores para a página envia_formulario.php e criando uma nova função para pegar o retorno da página envia_formulario.php
$.post("insert.php", { texto:texto, pst:pst }, function(get_retorno) {
//Depois que foi completado o cadastro e tem a mensagem de retorno, esconde a div carregando_form que tem a barra de carregamento.
complete:$("#carregando").hide("slow");
//Aqui coloca o valor que retono na função get_retorno dentro da div retorno, e mostra a div com efeito em slow.
$("#retorno").show("slow").text(get_retorno);
});
});
});
 
</script>

meu formulario

<div id="formulario">
	<strong>Mensagem:</strong>  <br />
	    <textarea name="texto" cols="145" id="texto"></textarea>
	    
        <input name="pst" type="hidden" id="pst" size="9" value="<?php echo "$pasta"?>"/>
		<br /><br />
	    <input name="cadastrar" id="cadastrar" type="submit" value="Enviar" />
</div>

E finalmente onde meus dados deveriam aparecer

<div id="carregando" style="text-align:center; display:none;"><img src="imagens/autocomplete.gif" /></div>
<div id="retorno">
	<table width="98%" border="0" cellspacing="0" cellpadding="0" align="center">
	<?php
	// Buscamos e exibimos as mensagens já contidas no banco de dados
	$query = mysql_query("SELECT * FROM TAB_RELACIONAMENTO WHERE PASTA='$pasta' ORDER BY DATA ASC");
	while($mensagem = mysql_fetch_object($query)) {
		
	?>
    <tr style="cursor:default" onMouseOver="javascript:this.style.backgroundColor='#99CC99'" onMouseOut="javascript:this.style.backgroundColor=''"> 
    <td><? echo "<strong>" . $mensagem->DATA . "</strong> disse: <em>" . $mensagem->TEXTO . "</em><br />"; ?></td>
    </tr>
	<? } ?>
</table>
</div>

Compartilhar este post


Link para o post
Compartilhar em outros sites

use o form action para o redirecionamento no formulário, não um div.
O butão submit do formulário deveria ser um input type submit..
e ser chamado no php por

​ if(isset($_POST['NOME_DO_BUTÃO'])){
}

Fica melhor de trabalhar, e você pode por um nome no form, e ele ser chamado no js

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faz tempo que não lido com Javascript, mas tenta trocar a linha 4:

$(function(){

por:

$(document).ready(function() {

E faz um teste chamando um alert() logo depois da linha:

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

Verifica também no console do browser se está ocorrendo algum erro.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Prezados,

Obrigado pela resposta, mais não estou conseguindo. Eu percebo que o arquivo insert.php não é chamado, no log mysql ele não aparece.

 

Vcs tem algum exemplo funcional que eu posso me guiar?

 

Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Senhores, bom noite!

 

Eu não coloquei o arquivo insert.php aqui e o problema estava nele, faltava um ; no include. Falta de atenção mesmo.

 

Agradeço ajudas de todos.

 

Obrigado!

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.