Ir ao conteúdo
  • Cadastre-se

Dúvida com PHP e ajax


Posts recomendados

Olá, amigos, boa noite.

 

Estou com problemas no meu código. Fiz um datatable para listar os dados de uma tabela do MySQL.Até aí, tudo bem. Só que, tanto para incluir e editar, abro uma modal para fazer as operações. Só que, por algum motivo, o ajax está dando erro. O mais estranho é que escrevo a URL na tela, tanto para incluir como para editar, e dá aquela mensagem "sucess". Na hora de incluir, ele dá o alert de erro e não faz nenhuma ação. E, ao clicar no ícone de editar, ele nem abre a modal, e aparece o alert de erro. Não sei se é o fato de estar utilizando a mesma modal para realizar tais operações tem alguma coisa a ver.No console do navegador também não dá nenhuma mensagem de erro.

Vou estar postando aqui o código, e caso alguém puder me dar uma orientação, eu agradeceria muito.

 

ScriptsPage.js

var id = null;	$(document).ready(function() {		$('#example').removeClass('display').addClass('table table-striped table-bordered');		$('#example').dataTable();		$('#example tr .edit').click(function() {//aqui, deveria abrir modal,listar registro			alert('foi clicado');			var codigo = $(this).closest('tr').find('td:eq(0)').text();     			loadModal(codigo);		});		$('#example tr .delete').click(function() {			var codigo = $(this).closest('tr').find('td:eq(0)').text();			loadModal(codigo);		});		$('#btNovo').click(function(){			$('#nome').val('');			$('#email').val('');			$('#telefone').val('');			$('#endereco').val('');			$('#mModal').modal();			$('#tituloModal').text('Novo Contato');		});		$('#btSalvar').click(function(){			InsereAtualiza();			alert('clicad');	 	});		$('#btExcluir').click(function(){	 			});	 	});	function InsereAtualiza(id){				var nome = $('#nome').val();		var email = $('#email').val();		var telefone = $('#telefone').val();		var endereco = $('#endereco').val();				//alert(id);						if(id!=''){//Insere			var url = "http://localhost:8080/jsbins/json.php?operacao=Insere";		}		/*else{//atualiza			var url = "http://localhost:8080/jsbins/json.php?operacao=Edita&id=id";		}		*/		alert(url);				$.ajax({			type: 'GET',			dataType: 'json',			url: url, 			success: function(response) {				console.log(response);				alert('Sucesso');				location.reload(); 			},			error: function(XMLHttpRequest, textStatus, errorThrown){				alert("Erro!");			}		});		id = null;	}	function loadModal(idd){	id = idd;		var url = "http://localhost:8080/jsbins/json.php?operacao=listBy&id=id";	$.ajax({	    type: 'POST',	    dataType: 'json',	    url: url, 	    success: function(response) {	    	console.log(response);	    	$('#nome').val(response[0]['nome']);	    	$('#email').val(response[0]['email']);	    	$('#telefone').val(response[0]['telefone']);	    	$('#endereco').val(response[0]['endereco']);	    	$('#mModal').modal();	        $('#tituloModal').text('Editar Contato');	        $('#btExcluir').show();  	    },	    error: function(errorThrown) {	        alert("Erro no ajax");	    }	});}

json.php

<?php	error_reporting(0);	header('Content-Type: application/json');	include('db.php');	$db = new db();	$db->connect();	$operacao = $_GET['operacao'];	//echo "$operacao";	$id = $db->escapeString($_GET['id']);	$nome = $db->escapeString($_GET['nome']); 	$email = $db->escapeString($_GET['email']); 	$telefone = $db->escapeString($_GET['telefone']); 	$endereco = $db->escapeString($_GET['endereco']);	$array = array(		'id'=>$id,		'nome'=>$nome,		'email'=>$email,		'telefone'=>$telefone,		'endereco'=>$endereco		);				echo "$array";	if(isset($operacao))	{		if($operacao =='Insere'){									$db->insert('contatos', $array);  			if($db->getResult())			{				echo json_encode(array('result'=> 'success'));			}			else			{				echo json_encode(array('result'=> 'error_insert'));			}		}		elseif ($operacao =='Edita') {			$db->update('contatos', $array); 			if($db->getResult())			{				echo json_encode(array('result'=> 'success'));			}			else			{				echo json_encode(array('result'=> 'error_update'));			}		}		elseif ($operacao =='Exclui') {			$db->delete('contatos', $array);  			if($db->getResult())			{				echo json_encode(array('result'=> 'success'));			}			else			{				echo json_encode(array('result'=> 'error_delete'));			}		}		elseif($operacao =='listBy'){			$db->select('contatos', '*', '', " id='".$id."'" );						$res = $db->getResult();			echo json_encode($res);			/*echo json_encode( array(						'id'=>$id,					'nome'=>$nome,						'email'=>$email,						'telefone'=>$telefone,						'endereco'=>$endereco						));*/		}		else{			echo json_encode(array('result'=> 'nao_definido'));		}	}	else	{		echo json_encode(array('result'=> 'null'));	}?>
Link para o comentário
Compartilhar em outros sites

  • 2 semanas depois...
Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...