Auto incrementar valor com UPDATE PDO

1. Auto incrementar valor com UPDATE PDO

Gregory Kaippert do Carmo
greg_kaippert

(usa Ubuntu)

Enviado em 06/12/2019 - 17:27h

Boa tarde galera, desculpe minha ignorância mas estou com um probleminha, quem puder ajudar eu agradeço. Tenho um campo quantidade que posso aumentar o valor incrementando em +1 ou decrementando em -1, porém ele não está incrementando corretamente, está incrementando e decrementando de dois em dois. Já fiz de mais de uma forma e não consigo sair disso, não sei mais o que fazer.

Engraçado que fazendo direto no banco de dados funciona, mas quando vou fazer pelo código, só incrementa de 2 em dois.

Esse é o meu código:

$inc = $this->conn->prepare("UPDATE churrasqueira SET qtd = qtd + 1 WHERE id = ?");
$inc->bindValue(1, $this->id);
if($inc->execute()):
return true;
endif;
return false;

$dec = $this->conn->prepare("UPDATE churrasqueira SET qtd = qtd - 1 WHERE id = ?");
$dec->bindValue(1, $this->id);
if($dec->execute()):
return true;
endif;
return false;

Coloquei esses dois UPDATES juntos aqui, mas cada um está em sua devida função.

Desde já fico muito agradecido pela ajuda de alguém.


  


2. Re: Auto incrementar valor com UPDATE PDO

nando
lfercorrea

(usa Arch Linux)

Enviado em 06/12/2019 - 18:02h

por acaso você não setou a tabela também para AUTO_INCREMENT ?


3. Re: Auto incrementar valor com UPDATE PDO

Gregory Kaippert do Carmo
greg_kaippert

(usa Ubuntu)

Enviado em 10/12/2019 - 11:45h

Te agradeço pela boa vontade, mas isso é o que dar quando fica o dia inteiro na frente do computador e trabalhando de madrugada, fazemos M e nem percebemos.

Descobri o vacilo que dei.
Estava chamando a funcao $churras->inc_dec() duas vezes, tanto no IF quanto pra imprimir o JSON.

Repare na linha 4 e 5, chamei duas vezes a mesma função.

// errado
try{
$churras->id = $data->id;
$churras->qtd = $data->qtd;
if($churras->inc_dec()):
echo json_encode(array("data"=>$churras->inc_dec()));
else:
echo json_encode(array("data"=>'Não foi possível adicionar churrasqueira.'));
endif;
}
catch(Exception $e){
echo json_encode(array("data"=>$e->getMessage()));
}

// certo
try{
$churras->id = $data->id;
$churras->qtd = $data->qtd;
if($churras->inc_dec()):
echo json_encode(array("data"=>'Editado com sucesso.'));
else:
echo json_encode(array("data"=>'Não foi possível adicionar churrasqueira.'));
endif;
}
catch(Exception $e){
echo json_encode(array("data"=>$e->getMessage()));
}

Desde já agradeço o amigo aí de cima.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts