@ismailyunlu hocam bu işinizi görecektir,
SELECT * FROM TableName ORDER BY DataID ASC, DataName ASC
Bay Mozilla'nın da artık tam destek vermesiyle sadece css kullanılabilir
Benim kullandığım Scrollbar Eklentisi;
@dnzclk hocam sunucu kaynağını tükettiğini düşünmekte haklısın bunun nedeni RAND() fonksiyonu. Hatta bunun ile ilgili bir makale vardı şimdi linki hemen bulamadım. RAND() fonksiyonu SQL sorgularını %90 oranında yavaşlattığını iddia ediyorlardı. BENCE RAND() işlemini SQL yerine PHP'ye yaptırmalısın.
Eğer tüm üye kayıtlarını çekmek istiyorsanız WHERE kullanmanıza gerek yok,
$soforsor=$db->prepare("SELECT * FROM sofor");
$soforsor->execute();
$soforcek=$soforsor->fetchAll(PDO::FETCH_ASSOC);
Daha sonra bir döngü ile sayfanıza yazdırırsnınız.
@gurkaniltus hocam; eğer tek sorguda bu işi çözebilecek biri olursa onu alırsınız. Ancak ilk bakışta aklıma gelen.
Nihayetinde çektiğiniz veriler bir dizi şeklinde dönüyor.
$SQLSorgu; // Bu değişkenin sorgu sonucu olduğunu düşünürsek
end($SQLSorgu); // Dizinin son elemanına odaklandık
prev($SQLSorgu); // Dizinin son elemanından bir önceki elemana odaklandık
Aynı sorunu yaşayan biri olursa arşiv amaçlı bulunsun burda;
DB Bağlantı Sınıfım içerisinde Transaction sürekli aktif etmek yerine; aşağıdaki gibi üç tane fonksiyon tanımlamak ve ihtiyaç duyduğunda çağırmak sorunu çözdü.
public function Transaction(){
$this -> MySQL_Connect -> beginTransaction();
}
public function commit(){
$this -> MySQL_Connect -> commit();
}
public function rollBack(){
$this -> MySQL_Connect -> rollBack();
}
@mertkaan şimdi bu işte 2 yöntem var.
Birincisi : Tüm Kategorileri Hiyerarşik olarak biz dizide saklamak. Dizi'nin içerisinde Child veya benzeri bir key altında. Sürekli alt kategorileri saklamak ve istediğiniz algoritmaya göre çekmek. Bu yöntem benim işime gelmedi çünkü ben bir kategori ağacının yarısında aşağı yada yukarı hareket edemedim. Yani ben beceremedim.
İkincisi : Recursive fonksiyon ile bir kategorinin herhangi bir yerinde iken aşağı alt kategorilere doğru yada yukarı üst kategorileri doğru hareket eden 2 fonksiyon yazmalısın. Bunları key kategori ID value kategori adı olarak tut bence.
*** Ancak karşılaştığım bir sorun bu fonksiyonu bir döngü içinde kullanıyorsan doğru sonuç üretmiyor. O zaman 2 fonksiyon daha yazmak gerekiyor. Bunlar 2. yöntemde kullandığın fonksiyonları dizi olarak değil önce string olarak saklıyorsun sonra bu stringi explode ile diziye çeviyorsun.
Artık döngü içinde dışında istediğin her yerde istediğin her formata giriyor. Umarım anlatabilmişimdir. Eğer anlatamadıysam kusura bakma dostum.
Hocam mrblar. Bu konu için çok kafa patlatmış birisiyim nihayetinde sonsuz kategori mantığının her türlü varyasyonun kendi fonksiyonlarımla yaptım. İşim nedeniyle inan şu anda uzun uzadıya cvp yazamıyorum. Net'te hatta buradada var; sonsuz kategori mantığı ve recursive fonksiyonları incele. Şöyle bir nacizane tecrübemi aktarayım. Bu konuda istediğini kadar hazır kod bul bir yerde bulduğun kodları kendine özelleştiremiyorsun. Fonksiyonlarını kendin yazarsan senin için her şekle giriyorlar. Birde şunu unutmamalısın; herhangi bir kategorinin tüm alt veya üst kategori ağacını çıkarırken hep en üstte yada en altta olarak düşünme ağacın ortasındaki bir kategori için çözüm üretmeli yazdığın fonksiyon.