Php E-ticaret Veritaban Model Yardımı
6
●136
- 16-05-2021, 12:43:29selamün aleyküm arkadaşlar şuanda bir firmanın eticaret sistemini yazıyorum sistem 3 farklı para birimi ile çalışıyor dolar, euro ve paund ve sistemde bazı özel istekleri var, bu isteklerden en önemlisi varyant fiyatların artır eksilt şeklinde değilde direk girilmesi + varyasyonlu ürünse ürüne hiç fiyat girilmeyecek ilk varyantın fiyatını çekecek gibi şimdi benim 3 adet tablom var ürünler, ürün fiyatlar ve ürün indirimler diye ürünler tablosunda ürün bilgileri, ürün fiyatlar tablosunda da 3 farklı döviz cinsinden ürün fiyatları tutuluyor.ürün indirimler tablosunda ise indirim kuralı yanı ürüne indirim tarih aralığında atanmışsa tarih aralığını stok kuralı koyulmuşsa o kural vs gibi şeyler tutuluyor. ön yüzde fiyata göre sıralamada problem olmasın diye ürün fiyatlar tablomda fiyat,indirimli fiyat ve son fiyat şeklinde 3 sütun var ön yüzde sıralama gibi işlemleri son fiyata göre yapıyorum böylece sıralama düzgün oluyor. indirim koşullarınıda yazdığım bir fonksiyonla ürünleri sayfa sayfa çekerken o saydaki ürün idlerini fonksiyona gönderip eğer tarihi gelmişse fiyatlar tablosunda indirimli fiyat kısmını nulla son fiyat kısmını ürün fiyat sütununa güncelliyorum. buraya kadar bir sorun yok ancak kampanya sistemide isteniyor yanı atıyorum şu kategori veya ürünlerde sepette %50 indirim veya haftanın belli günlerin belli saatlerinde kategori veya ürün bazlı şu kadar indirim gibi iş bu kısımda tıkanıyor şimdi kampanya koşullarını farklı tabloda tutarım kampanyayı, kampanyalı ürün altında da gösteririm ama sıralama ürün fiyatlar tablosundaki son fiyat kısıma göre olduğu için bu sefer kampanyadaki indirimli halini hesaplatıp oraya yazdırmam gerekiyor burda nasıl yol izlemem lazım yardımcı olur musunuz (başka yerde hatam varsa yada söyle yapsan daha iyi olur dediğiniz yer varsa önerilerinize açığım)
- 17-05-2021, 19:38:26Fiyat güncelleme işlemi için bakiye=bakiye-$fiyat şeklinde giriş yaparsanız fiyat düşecektir.
Kur'u sorun ediyorsanız, update işlemi öncesinde $fiyat = $ana_kur * $siparis_kur; şeklinde ekleme yapabilirsiniz.
Detaylı yardım için kod bloğunuzu paylaşın, yardımcı olmaya çalışayım. - 18-05-2021, 07:22:32Aslında tam olarak bu cevabı sormuyor büyük çaplı eticaret sitesi için bu kodların kullanılacağı yer önemli ve arkadaş zaten ondan karmaşık anlatımı tercih etmiş.oktayc0 adlı üyeden alıntı: mesajı görüntüle
Büyük çaplı eticaret yazılımları sıfırdan yazılırken doğal buglar , açıklar ve performansı eksi yönde etkileyen unsurlar doğar. çünkü iç içe geçmiş birçok kod fonksiyonu aynı yerde kullanırsınız. Ürün ve kategori zaten bu oluşumun bel kemiğidir. Ürün üstüne kampanya ,indirim, süre, duyuru herşey buradan yapılır. ve bir fiyat fonksiyonunda güncelleme yapmak demek aslında sistemin tamamında güncelleme yapmak demek . bunlardan birinin hiyerarşisi yanlış olduğunda bir yerde tıkanır sistem ve o rakamı tutturmak için bir çok kod yazmak gerekir ki buda performansı yavaşlatacaktır.
DeeperSoft sizin belirttiğiniz olayda sanırım 2 fiyat stunu var birisi hesabı yaptığınız diğeride sıralamayı çektiğiniz stun .kodları görmeden bir şey diyemem ama size şu tavsiyem olur. tüm hesabı bir stundan yaptırın arkaplanda indirim olacağında kodlarla çözün veritabanında tutulan veri her zaman sabittir adı üstünde değişkende tuttuğunuzda olaya göre değişecektir.
size güzel bir tavsiyem olsun sistemi nasıl yazdığınızı bilmiyorum fakat veritabanında ürünler eklenirken fiyatları kdv haric eklettirin daha sonrasında fiyat*1.18 dediğinizde sonucu bulacaksınız zaten kur'a gore yapmak istediğinizde fiyat*kur*1.18 yaptığınızda yine sonucu verecek indirim yapacağınızda indirim(fiyat*kur*1.18); gibi bir fonksiyonla yine halledebilirsiniz.
Umarım kafanızda bir şeyler canlanmıştır. Bu bilgi denizde sadece ufak bir balık yine yardıma ihtiyacınız olursa buradayız.
İyi çalışmalar - 18-05-2021, 16:38:53İnanın dışarı çıkmadan önce yardımcı olmak istedim fakat tek paragraf halinde gönderdiğiniz yazıyı kafamda toparlamakta zorlandım.
Yanlış anlamaz iseniz eğer tek satır halinde yazacağınız anlatımları daha detaylı ve paragraflar halinde göndermenizi tavsiye ederim.
Bende fikirlerimi beyan edeceğim müsait olunca
Saygılarımla
AlıntıDeeperSoft adlı üyeden alıntı: mesajı görüntüle
