Publicidade

felini

[Resolvido] Retorno jQuery / Ajax

Boa noite!

 

Estou fazendo um sistema que irá gravar dados no banco de dados com jQuery e Ajax.

 

A parte que grava está funcionando, porém gostaria de fazer a parte que busca estes dados gravados. Atualmente meu Ajax está desta forma:

 


	var sArquivoUrl = "ajax/cores.AJAX.php";
	var oParam      = new Object();
			oParam.cor  = sCor;
			oParam.exec = "cadastrarCor";

	var oAjax = $.ajax({
											url: sArquivoUrl,
											beforeSend: function (){
												$('#divSucesso').show();
												$('#divSucesso').html("Cadastrando Cor...");
											},
											type: "post",
											data: oParam,
											complete: function (){
												$('#divSucesso').html("Cadastro efetuado com sucesso.");
												$('#divSucesso').hide(2500);
											}
  									 });

 

 

O meu arquivo PHP está desta forma:

 


 switch ($sExec) {

   case "cadastrarCor":
     $cor->sCor = addslashes($_POST["cor"]);
     $cor->cadastrar();
     $cor->iId;


   break;
 }

 

 

Iria criar um novo case = "listaCor". Este case irá buscar os dados no banco de dados e me retornar. Porém como retorno isso para a página que irá executar o Ajax? Tentei passar por jSON mas não deu muito certo.

 

Pesquisei na internet e no site oficial o jQuery e não tinha nada referente a tratamento de retorno do Ajax.

 

Alguém tem uma dica ou link que possa me dar uma idéia?

 

Valeu!

0

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, você pode usar JSON mesmo! No php você cria uma função que retorna, por exemplo, um array e, ao invés de usar "return" para o retornar o valor você usa "echo json_encode". No parâmetro "complete" da função AJAX você não pode esquecer de passar um parâmetro para a function e, usar $.parseJSON para utilizar os dados retornados pelo PHP.

 

Aqui você acha uma referência de como usar o json_encode. Vou alterar seu código para você ter uma idéia:

 

var oAjax = $.ajax({
   url: sArquivoUrl,
   beforeSend: function (){
       $('#divSucesso').show();
       $('#divSucesso').html("Cadastrando Cor...");
   },
   type: "post",
   data: oParam,
   complete: function (data) //É aqui que você diz para o AJAX que a função tem um retorno {
       //Aqui você transforma o retorno JSON em objeto para facilitar o uso
       data = $.parseJSON(data);
       $('#divSucesso').html("Cadastro efetuado com sucesso.");
       $('#divSucesso').hide(2500);
   }
});

 

Qualquer coisa estamos aí!

Editado por William Bruno
Remover quote desnecessário
0

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fala ae Nelson,

 

Valeu pela ajuda cara, consegui fazer o que queria. Ta tudo funcionando agora :)

 

 

 

 

 

 

 

0

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

  • Próximos Eventos