lostyazilim
tr.link

PHP ile kritere göre saydırma

9 Mesajlar 1.010 Okunma
acebozum
tr.link

Exor Exor WM Aracı Kullanıcı
  • Üyelik 07.11.2013
  • Yaş/Cinsiyet 38 / E
  • Meslek Web&Grafik Tasarım
  • Konum Samsun
  • Ad Soyad B** B**
  • Mesajlar 169
  • Beğeniler 16 / 7
  • Ticaret 0, (%0)
Merhaba
Değişken ile gösterdiğim id numarasının üst rakamlarını sayarak kaç adet olduğunu yazmasını istiyorum. Bunu nasıl yapabilirim?
Örneğin; değişkenden gelen id 99 olsun. 99un üstündeki (100,101,vs.) idlerin durumları 1,3 ve 4 olanlarının adetlerini saymasını istiyorum.
Şöyle bir kod yazdım fakat yanlış hesaplıyor.

$say = mysql_fetch_object(mysql_query("select count(yid) yapilacak from yapilacak where yid > $yid and ydurum='1' or ydurum='3' or ydurum='4'"));
?>


Yazdırma işlemi içinde aşağıdaki kodu kullanıyorum.
yapilacak ; ?>

Sorun nerede acaba?
 

 

wmaraci
reklam

kelebek kelebek WM Aracı Kullanıcı
  • Üyelik 11.05.2013
  • Yaş/Cinsiyet 32 / E
  • Meslek Geliştirici
  • Konum Malatya
  • Ad Soyad E** K**
  • Mesajlar 3142
  • Beğeniler 60 / 764
  • Ticaret 5, (%100)
mysql bildiğim kadarı ile kullanımdan kaldırıldı pdo ya geçmenizi tavsiye ederim size
 

 

Exor Exor WM Aracı Kullanıcı
  • Üyelik 07.11.2013
  • Yaş/Cinsiyet 38 / E
  • Meslek Web&Grafik Tasarım
  • Konum Samsun
  • Ad Soyad B** B**
  • Mesajlar 169
  • Beğeniler 16 / 7
  • Ticaret 0, (%0)
mysql kaldırılmadı sadece güvenli olduğundan kodlar değişti diye biliyorum. Neyse şu anlık bunu yapmam gerekli zaten pdo ile ilgili bir düşüncem var fakat şimdi değil. Yardımcı olabilir misiniz konu hakkında?
 

 

gokhancancilar gokhancancilar WM Aracı Kullanıcı
  • Üyelik 19.11.2015
  • Yaş/Cinsiyet 37 / E
  • Meslek Yazılım Geliştirici
  • Konum Kocaeli
  • Ad Soyad G** Ç**
  • Mesajlar 16
  • Beğeniler 1 / 3
  • Ticaret 1, (%100)
PHP'nin yeni versiyonlarında mysql kütüphanesi yerine mysqli kullanılıyor. Group By yid eklerseniz doğru sonuç verir yanlış anlamadıysam.
 

 

wmaraci
wmaraci

Exor Exor WM Aracı Kullanıcı
  • Üyelik 07.11.2013
  • Yaş/Cinsiyet 38 / E
  • Meslek Web&Grafik Tasarım
  • Konum Samsun
  • Ad Soyad B** B**
  • Mesajlar 169
  • Beğeniler 16 / 7
  • Ticaret 0, (%0)
Dediğiniz yaptım sorgunun sonuna group by yid ekledim. Fakat ne olursa olsun 1 değerini döndürüyor şu anda. Öncesinde 4 kayıt da olsa 1 olarak yazıyor.
 

 

codder3512 codder3512 WM Aracı Kullanıcı
  • Üyelik 11.11.2015
  • Yaş/Cinsiyet 42 / E
  • Meslek BT Eğitmeni
  • Konum Tekirdağ
  • Ad Soyad K** Y**
  • Mesajlar 6
  • Beğeniler 0 / 0
  • Ticaret 0, (%0)
SELECT COUNT(*) AS BulunanKayitSayisi FROM yapilacak WHERE yid>99 AND (ydurum=2 OR ydurum=3);

SELECT COUNT(*) FROM yapilacak WHERE yid>99 AND (ydurum=2 OR ydurum=3);
 

 

Exor Exor WM Aracı Kullanıcı
  • Üyelik 07.11.2013
  • Yaş/Cinsiyet 38 / E
  • Meslek Web&Grafik Tasarım
  • Konum Samsun
  • Ad Soyad B** B**
  • Mesajlar 169
  • Beğeniler 16 / 7
  • Ticaret 0, (%0)
Teşekkür ederim codder3512
Yazdığın gibi yaptığımda çalıştı bunun nedeni nedir? And ve Or aynı anda çalışmaz mı? Yoksa Count a * verdiğin için mi doğru sonuç çıkardı. Açıklarsan sevinirim. Hazır koddansa nasıl olduğunu bilmek daha güzel olur.
 

 

codder3512 codder3512 WM Aracı Kullanıcı
  • Üyelik 11.11.2015
  • Yaş/Cinsiyet 42 / E
  • Meslek BT Eğitmeni
  • Konum Tekirdağ
  • Ad Soyad K** Y**
  • Mesajlar 6
  • Beğeniler 0 / 0
  • Ticaret 0, (%0)
count a * verdiği için çıkarttı select count(yid) olduğunda sadece yid sütununda işlem yapıyor dolayısıyla senin istediğin şartların o sütunda olmayışı problem ortaya çıkartıyor.

şart and (şart or şart) biçiminde parantezli kullanımda doğru kullanım.
 

 

Exor Exor WM Aracı Kullanıcı
  • Üyelik 07.11.2013
  • Yaş/Cinsiyet 38 / E
  • Meslek Web&Grafik Tasarım
  • Konum Samsun
  • Ad Soyad B** B**
  • Mesajlar 169
  • Beğeniler 16 / 7
  • Ticaret 0, (%0)
Tekrar teşekkür ederim.
 

 

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