lostyazilim
tr.link

php de önceki veriyi tutup güncelleme yapma

2 Mesajlar 546 Okunma
acebozum
tr.link

omrumdely omrumdely Web Tasarım Kullanıcı
  • Üyelik 26.05.2012
  • Yaş/Cinsiyet 34 / E
  • Meslek Web Tasarım
  • Konum Kocaeli
  • Ad Soyad Ö** G**
  • Mesajlar 1469
  • Beğeniler 157 / 158
  • Ticaret 11, (%100)
merhaba arkadaşlar bir verinin güncellenmeden önnceki halini nasıl elde edebilirim. olayım şu.

urun tablom > urun_toplam
siparis tablom > siparis_toplam diye tablolarım var.

sipariş verdik 200 adet . urun tablosuna update ettik. > buraya kadar sorunum yok.

siparişi fazla verdik diyelim. 180 adet vermemiz lazımdı.update ettim siparis tablosunu güncelledim.
ama urunler tablosuna girdiğim ilk 200 değeri bulup 180 den çıkartıp kalan 20 yi urunler tablosundan çıkartmak istiyorum.


aşşağıdaki koda uygulamaya çalışıyorum direk :200-180 yaparak sonucu 20 yazdırıyor.


// SİPARİŞ TABLOSUNDA VERİYİ ÇEKMEK
$onceki=$db->prepare("SELECT * FROM siparis where siparis_id=:id");
$onceki->execute(array( 'id' => guvenlik($_POST['stok_id']) ));
$oncekiveri= $onceki->fetch(PDO::FETCH_ASSOC);
$oncekiveri1 = $oncekiveri['sip_urun_adedi'];



$totall = $sip_urun_adedi - $oncekiveri1;


## GÜNCELLEME GİRİŞE EŞİT İSE
if ($durum == "giris")
{


## ÖNCEKİ VERİ BÜYÜKSE ŞİMDİKİ VERİDEN BURDA İŞLEM YAP
if ($sip_urun_adedi < $onceki)
{

## ÜRÜN STOĞUNDAN DÜŞER
$kasa_g = $db->prepare('UPDATE urun SET
urun_toplam = urun_toplam - :dusur WHERE urun_adi = :adi');
$kasa_giris = $kasa_g->execute([
'dusur' => $totall,
'adi' => $value
]);
## // ÜRÜN STOĞUNDAN DÜŞER


}
## ÖNCEKİ VERİ BÜYÜKSE ŞİMDİKİ VERİDEN BURDA İŞLEM YAP




}
## GÜNCELLEME GİRİŞE EŞİT İSE
 

 

:)
elektronikssl
webimgo

ictaysi ictaysi taysiweb.com Kullanıcı
  • Üyelik 05.08.2017
  • Yaş/Cinsiyet 25 / E
  • Meslek Mezun
  • Konum Balıkesir
  • Ad Soyad İ** C**
  • Mesajlar 80
  • Beğeniler 20 / 10
  • Ticaret 1, (%100)
Ürün tablonda neden urun_toplamı tutuyorsun ki?

Sipariş 10 adet verildiyse ve 3 adeti yanlışlıkla verildiyse mantıken sipariş tablosundaki adetten 3 çıkartıp ürün tablosundaki ürünün adetine 3 eklersin.
 

 

wmaraci
wmaraci
Konuyu toplam 3 kişi okuyor. (0 kullanıcı ve 3 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al