sorunum şu Siparis işlemi alanı başarılı dönüyor
bakiye düşümü ise başarısız.Catch bloğu çalışıyor hata veriyor ancak işlem geri alınmıyor
Not:Hata verip işlemi geri döndürmesi için sorguda bakiye sütunun adını bakiye1 yaptım
İşlem yaptığım deneme fonksiyonum
function odemesor()
{
$this->db()->beginTransaction();
try{
$sipekle=$this->db()->prepare("insert into siparisler set sippaket=2,sipalici=:alici,siplimit=100,sipkalan=100,siptutar=0,sipplatform='twitter',sipdurum=0,sipariskod='12ASX43AZ12QP'");
$sipekle->execute(array("alici"=>1));
$bakiye=$this->db()->prepare("update uyeler set bakiye1=bakiye-:cost where id=:sira");
$bakiye->execute(array("cost"=>1,"sira"=>1));
$this->db()->commit(); return(array("durum"=>"İşlem başarılı"));}
Catch(PDOEXCexception $i)
{
$this->db()->rollback(); return(array("hata"=>"İşlem sırasında hata oluştu.Lütfen tekrar deneyin.Sürekli olarak bu hatayı alıyorsanız destek talebi açın:
Hata Kodu: ERR-SIP-0_".time()));
}
}
Bağlantı sınıfı
class baglan
{
public $vt;
function db()
{
if($this->vt)
{
return $this->vt;
}
else{
try
{
$this->vt=new PDO("mysql:host=localhost;dbname=appdest;charset=utf8","root","");
//$this->vt->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
catch(PDOEXception $i)
{
die("veritaibanı Bağlantısı yapılamadı Hata Detayı : ".$i->getMessage());
}
return $this->vt;
}
}
}
Sonuç
şlem sırasında hata oluştu.Lütfen tekrar deneyin.Sürekli olarak bu hatayı alıyorsanız destek talebi açın:
Hata Kodu: ERR-SIP-0_524422523
Veritabanında
Siparişler tablosuna 1 veri eklendi
Üyeler tablosunda veri güncellenmedi