Ir para conteúdo

POWERED BY:

Arquivado

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

pdnthiago

Erro UPDATE e DELETE

Recommended Posts

Boa tarde caros amigos,

Estou iniciando no php e estou criando um pequeno cadastro de cliente, so que estou com dificuldade na parte do EDITAR e do DELETE, o banco de dados mysql nao esta pegando o ID, por favor me ajudem a encontrar onde esta o erro...

CÓDIGO EDITAR:

<?php 
$getId = addslashes($_GET['Id']);
$readClientes = $Query->Read('clientes', "WHERE Id = '".$getId."'");
if(!$readClientes){
echo "<script>history.back()</script>";
}else{
foreach($readClientes as $readClientesView);
}
?>
<main class="main">
<div class="container">
<div class="row">
<div class="col-md-12 content" role="main">
<h1 class="title-1 title-content">Novo Cliente</h1>
<hr />
<?php
if(isset($_POST['sendClientes'])){
$sendClientes = filter_input_array(trim(INPUT_POST, FILTER_DEFAULT));
unset($sendClientes['sendClientes']);

$Query->Update('Clientes', $sendClientes, "WHERE Id = '".$getId."'");
echo "<script>alert('Cliente Alterado com Sucesso.')</script>";
echo "<script>window.location = 'home.php?pg=clientes'</script>";
}
?>

CODIGO DELETAR:

<?php 
$getId = addslashes($_GET['Id']);
$Query->Delete('clientes', "WHERE clientes = '".$getId."' AND Id = '".$getId."'");
echo "<script>alert('Cliente deletado com sucesso.')</script>";
echo "<script>history.back();</script>";
?>

Desde já agradeço muito ajuda de todos...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faça um debug da query, para isso existe funções nativas de reportação de erros.

E isso aqui, nunca serão iguais não acha?

'clientes', "WHERE clientes = '".$getId."' AND Id = '".$getId."'"

Compartilhar este post


Link para o post
Compartilhar em outros sites

Lembre-se que o PHP é Case sensitive, ele diferencia letras maiúsculas e minúsculas.

Utilize a função var_dump() para verificar tudo que está sendo passado por GET, na prática:

var_dump($_GET);

Na query abaixo:

'clientes', "WHERE clientes = '".$getId."' AND Id = '".$getId."'"

Está incorreto a tratativa do WHERE, uma coisa é o ID do "registro" que é único a autoincrement, outra coisa é a identificação do usuário, então sua cláusula está incorreta. Você precisa saber se o que você está mandando para página de edição é d fato o ID do cliente ou o ID do registro para então informar ao WHERE a instrução correta.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Isso é o básico. Se você não entendeu infelizmente não podemos fazer nada. Sugiro você tentar resolver o problema em estudo com o manual do PHP, ou contrate um profissional para fazê-lo. Ou então, seja específico e informe qual parte você não conseguiu absorver.

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.