Jump to content
Sign in to follow this  
miqueiasrafael

Insert via POST AJAX

Recommended Posts

Gostaria de uma ajuda dos senhores, pois não estou conseguindo inserir os registros na minha base de dados. Segue abaixo o código!

$(document).ready(function () {
$("#sendnews").click(function (e) {
e.preventDefault();
if ($("#email").val() === '') {
// Se input vazio informa Error
$('#status').show();
$('#status').addClass("alert-danger");
$('#status').text("Encontramos um error!");
return false;
}

$("#email").hide(); //hide input
$("#sendnews").hide(); //hide submit button
$(".panel-body").hide(); //hide panel
$("#LoadingImage").show(); //show loading image

var dataform = 'email=' + $("#email").val();

$.ajax({
type: 'post',
url: "/home/save",
dataType: "text", // Data type, HTML, json etc.
data: dataform,
success: function () {

//se foi inserido com sucesso, Exibe mensagem de sucesso
$("#email").val(''); //empty text field on successful
//$("#status").append(response);
$('#status').show();
$('#status').addClass('alert-success');
$('#status').text("Cadastro realizado com sucesso!");
$("#LoadingImage").hide(); //hide loading image
},
// Se Error
error: function (xhr, ajaxOptions, thrownError) {
$("#status").show(); //show message
$("#LoadingImage").hide(); //hide loading image
alert(thrownError);
$('#status').addClass("alert-danger");
$('#status').text("Encontramos um error!");

}

});
});
});

Share this post


Link to post
Share on other sites
$(document).ready(function () {
	$("#sendnews").click(function (e) {
	e.preventDefault();
	if ($("#email").val() === '') {
	// Se input vazio informa Error
	$('#status').show();
	$('#status').addClass("alert-danger");
	$('#status').text("Encontramos um error!");
	return false;
	}
	
	$("#email").hide(); //hide input
	$("#sendnews").hide(); //hide submit button
	$(".panel-body").hide(); //hide panel
	$("#LoadingImage").show(); //show loading image
	
		$.ajax({
			type: 'post',
			url: "/home/save",
			data: {email:$("#email").val()},
			dataType: "text", // Data type, HTML, json etc.
			success: function (data) {
                                 console.log(data);	
				//se foi inserido com sucesso, Exibe mensagem de sucesso
				$("#email").val(''); //empty text field on successful
				//$("#status").append(response);
				$('#status').show();
				$('#status').addClass('alert-success');
				$('#status').text("Cadastro realizado com sucesso!");
				$("#LoadingImage").hide(); //hide loading image
			},
			// Se Error
			error: function (xhr, ajaxOptions, thrownError) {
				$("#status").show(); //show message
				$("#LoadingImage").hide(); //hide loading image
				alert(thrownError);
				$('#status').addClass("alert-danger");
				$('#status').text("Encontramos um error!");
			}		
		});
	});
});

Alterei só a forma que você passa o data e acrescentei o argumento em sucess , mais só testando pra saber kkk. Instale o FireBug no seu Navegador e use para ajudar a ver se o erro está ao enviar a solicitação, ou no retorno depois efetuado a requisição!

Share this post


Link to post
Share on other sites
$(document).ready(function () {
	$("#sendnews").click(function (e) {
	e.preventDefault();
	if ($("#email").val() === '') {
	// Se input vazio informa Error
	$('#status').show();
	$('#status').addClass("alert-danger");
	$('#status').text("Encontramos um error!");
	return false;
	}
	
	$("#email").hide(); //hide input
	$("#sendnews").hide(); //hide submit button
	$(".panel-body").hide(); //hide panel
	$("#LoadingImage").show(); //show loading image
	
		$.ajax({
			type: 'post',
			url: "/home/save",
			data: {email:$("#email").val()},
			dataType: "text", // Data type, HTML, json etc.
			success: function (data) {
                                 console.log(data);	
				//se foi inserido com sucesso, Exibe mensagem de sucesso
				$("#email").val(''); //empty text field on successful
				//$("#status").append(response);
				$('#status').show();
				$('#status').addClass('alert-success');
				$('#status').text("Cadastro realizado com sucesso!");
				$("#LoadingImage").hide(); //hide loading image
			},
			// Se Error
			error: function (xhr, ajaxOptions, thrownError) {
				$("#status").show(); //show message
				$("#LoadingImage").hide(); //hide loading image
				alert(thrownError);
				$('#status').addClass("alert-danger");
				$('#status').text("Encontramos um error!");
			}		
		});
	});
});

Alterei só a forma que você passa o data e acrescentei o argumento em sucess , mais só testando pra saber kkk. Instale o FireBug no seu Navegador e use para ajudar a ver se o erro está ao enviar a solicitação, ou no retorno depois efetuado a requisição!

 

 

 

Retorna o código html

Share this post


Link to post
Share on other sites

Se a solicitação esta sendo feita corretamente, agora vc tem que verificar o pq não esta salvando depois de feita a requisição e a url que estiver solicitando for a correta, se o javascript esta enviado sem problemas, o problema está ao salvar os dados, apenas verifique se o valor e-mail foi passado corretamente e com o firebug vc vai facilitar para achar o erro de sua aplicação, ai tem a parte do servidor, que vai receber esse valor e salva-lo no Banco de Dados, por isso verifique sempre a requisição e se todos os dados estão sendo passado corretamente,

Share this post


Link to post
Share on other sites

Se a solicitação esta sendo feita corretamente, agora você tem que verificar o pq não esta salvando depois de feita a requisição e a url que estiver solicitando for a correta, se o javascript esta enviado sem problemas, o problema está ao salvar os dados, apenas verifique se o valor e-mail foi passado corretamente e com o firebug você vai facilitar para achar o erro de sua aplicação, ai tem a parte do servidor, que vai receber esse valor e salva-lo no Banco de Dados, por isso verifique sempre a requisição e se todos os dados estão sendo passado corretamente,

 

Bom está recebendo normalmente o valor da variável que passei, (E-mail) e quanto a URL também, pois testei e enviei um post via form Action e salvou normalmente, porém não quero carregar a página entende?

Share this post


Link to post
Share on other sites

 

Bom está recebendo normalmente o valor da variável que passei, (E-mail) e quanto a URL também, pois testei e enviei um post via form Action e salvou normalmente, porém não quero carregar a página entende?

 

Quando removo o console.log() retorna "Cadastro realizado com sucesso!" porém não insere no banco.

Share this post


Link to post
Share on other sites

o console.log está retornando oque? No retorno dele deve ter alguma informação útil do problema!

Estou utilizando zend framework 2, não sei se você conhece. Porém está retornando o código do layout da página, e no topo

 

Encontramos um erro!<!DOCTYPE html><html lang="pt-BR">

<head>

<title></title> <meta charset="utf-8">

 

.

.

.

.

 

 

Há tinha esquecido de mencionar que esse erro é no tab resposta do console do firebug

E no tab Postar: o valor preenchido do campo input

 

Estou usando essa versão do Jquery

 

https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js

 

 

Há tinha esquecido de mencionar que esse erro é no tab resposta do console do firebug

E no tab Postar: o valor preenchido do campo input

 

Estou usando essa versão do Jquery

 

https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js

}?????

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
Sign in to follow this  

  • Similar Content

    • By TheRonaldoStar
      Oii, fala ae pessoal!!
      Alguém pode me ajudar com uma coisa por favor?;
      Seguinte!, eu anteriormente fiz uma pergunta aqui no fórum recorrente a isso, mas eu conseguir uma solução parcial.
      Que era, fazer uma listagem de todos os cadastros e fazer a junção dos cadastros com uma coluna igual, Ou seja existem duas colunas [DE e Para], que recebem o id de quem está recebendo ou que está enviando a mensagem, eu conseguir fazer a tal listagem por grupo mas o problema que estou tendo é: que so faz o agrupamento de as colunas contiver o id por ex: [De = "1" e Para ="2"].
      Atualmente estou usando a codificação deste Jeito:
       
      $sql_2 = $db -> prepare("SELECT * FROM privado WHERE (Para = '$Meu_id') Or (De = '$Meu_id') GROUP BY Para, De DESC"); $sql_2 -> execute(); Esta consulta como pode ver ele busca todos os cadastros que tenha o meu ID ou seja do usuário online!, Após a consulta ele vei obter em um "while" somente o [ Id_De eo Id_Para ] desta forma:
      while($dados_2 = $sql_2 -> fetch(PDO::FETCH_OBJ)){ $Id_De = ($dados_2 -> De); $Id_Para = ($dados_2 -> Para); } Mas em fim eu gostaria de saber como mostrar somente um resultado ou seja o ultimo resultado que tiver o meu ID em ambas colunas [ Id_De ou Id_Para ].
      Antes de vocês me recomendar a função DESC LIMIT 'valor' saiba eu quero que liste todos os usuários que enviou ou recebeu minha mensagem não somente 1 ou seja se eu mandar um mensagem para o usuário 2 e ele me retornar uma mensagem vai mostrar somente o ultimo registro que tenha o meu ID e o id dele.
       
      Atenciosamente,
      ~Ronaldo
       
    • By TheRonaldoStar
      Oi, mais cedo eu fiz um post aqui no site mas um pouco longo creio eu que e mais fácio eu fazer uma pergunta mais direta.
      A pergunta é:
      Como posso fazer agrupamentos de uma tabela através de dois campos cujo os valores são =, mesmo que esteja invertidos?
      EX: [DE = "1"], [PARA = "2"].
      E fazer o agrupamento ou só mostrar o ultimo cadastro mesmo que eles estejam invertidos desta forma?
      EX: [DE = "2"], [PARA = "1"].
       
      Acho que agora com este post fui mais claro, Alguém pode me ajudar por favor??.
      Atenciosamente,
      ~Ronaldo
    • By HigorCrds
      Bom, o que eu consegui até agora foi fazer com que, ao usuário clicar em algum dos botões de paginação (1, 2, 3...) o PHP guarde uma SESSION com o número da página correspondente.
      Segue o código:
       
      <!-- BOTÃO COM O NÚMERO DA PÁGINA --> <button onclick="mudaVar(<?php echo $i; ?>);"> <?php echo $i; ?> </button> <!-- FUNÇÃO PARA GUARDAR SESSION PG --> function mudaVar(valor) { $.ajax({ url:'sessions.php?valor='+valor }); } // GUARDA SESSION PG if(isset($_GET['valor'])){ $_SESSION['pg'] = $_GET['valor']; } Até aí tudo bem, só que o problema é que a SESSION não é alterada naquele momento, só quando eu atualizo a página.
      Como corrigir isso?
    • By Carcleo
      A ideia:
       
      toda e entrada no site, seja com link direto do tipo:
       
      www.site.com.br/pasta1/pasta2/arquivo.php  
      ou normal url amigável
       
      www.site.com.br/categoria/tipo  
      tudo queria que redirecionasse para o index.php da raiz do site.
       
      E que, caso o arquivo ou pasta NÃO existisse, abrisse normalmente a pagina 404.php
       
       
      Tentei de tres formas mas nenhuma dá certo.
       
      Primeira forma
      RewriteEngine On ErrorDocument 400 http://www.sortecard.com.br/index.php ErrorDocument 401 http://www.sortecard.com.br/401.php ErrorDocument 403 http://www.sortecard.com.br/403.php ErrorDocument 404 http://www.sortecard.com.br/404.php ErrorDocument 500 http://www.sortecard.com.br/500.php php_value allow_url_fopen on php_value allow_url_include on php_flag mail_filter 0 RewriteCond %{HTTP:X-Forwarded-Proto} !https RewriteCond %{HTTPS} off RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] RewriteCond %{SCRIPT_FILENAME} !-f RewriteCond %{SCRIPT_FILENAME} !-d RewriteRule ^(.*)$ index.php?page=$1 Segunda forma:
      Options +FollowSymLinks DirectorySlash On RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f [OR] RewriteCond %{REQUEST_FILENAME} \.php$ RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php?request=$1 [L] Terceira forma:
      RewriteEngine On ErrorDocument 400 http://www.sortecard.com.br/index.php ErrorDocument 401 http://www.sortecard.com.br/401.php ErrorDocument 403 http://www.sortecard.com.br/403.php ErrorDocument 404 http://www.sortecard.com.br/404.php ErrorDocument 500 http://www.sortecard.com.br/500.php php_value allow_url_fopen on php_value allow_url_include on php_flag mail_filter 0 RewriteCond %{HTTP:X-Forwarded-Proto} !https RewriteCond %{HTTPS} off RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] RewriteRule ^(.*)$ index.php?page=$1 Problemas:
       
      A) Quando acesso a url diretamente não está redirecionando para o index.
      B) Quando falo que é para redirecionar todos os arquivos ele não me dá os parêmetros. 
×

Important Information

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