Sonraki ve Önceki düğmeleri vs Gerçek pagination

7 Cevap php

Gerçek pagination tarafından ben böyle bir şey demek ne zaman sayfa 3:

<<Previous 1 | 2 | {3} | 4 | 5 |...| 15 | Next>>

Sonraki ve Önceki düğmeleri ile ben böyle bir şey demek ne zaman sayfa 3:

<<previous Next>>

Veritabanı sorgulama fazla gerçek pagination aksine gerektirmez beri emin Performans akıllı im Önceki ve Sonraki Düğmeler iyidir. Tarafından fazla sorgulama i sayfasında görüntülemek için gerekenleri daha veritabanından daha fazla bilgi almak anlamına veritabanını.

Benim teorisi sadece bir sayfada görüntülemek için gereken kesin bilgi gerektirir Önceki ve Sonraki Düğmeler ölçüde bir site performansını artırabilir olduğunu, beni düzeltin lütfen bu im yanlışsa.

bu yüzden,

Bu iki seçenek söz konusu olduğunda kullanıcılar gerçekten tercih var mı?

sadece bir Geliştirici tercihi ve kolaylık?

Hangisini tercih edersiniz? neden?

* Not: Önceki ve Sonraki Düğmeler genellikle yeni ve eski etiketli.

7 Cevap

Ben deneyimsiz iken, ben bir site yapılmış ve önceki / sonraki için seçti. Dün bu sitede çalışmak oldu ve ben bir acemi hata kabul şeylerden biriydi. Orada bir performans farkı olabilir ve varsa bu listeyi aşağı gitmek için gerekli ekstra tıklamalar bir kullanıcıların hayal kırıklığı ile karşılaştırıldığında önemsiz değil gerekir.

Kullanıcıların tecrübe şekilde daha önemli bir kaç işlemci döngüleri tasarruf daha. Sen, söyleyebiliriz "Ama site delicesine popüler olur ve çünkü benim yoğun kaynak sayfa bağlantıları aşağı giderse ne olur?" benim cevap "bu kadar popüler almak kullanmak zor bir site yaptım nasıl?" olurdu (Ben de sayfalama gerçek suçlu değildi şüpheli olur)

Bu iki seçenek söz konusu olduğunda kullanıcılar gerçekten tercih var mı?

Evet. Ben sadece sayfa 15 almak istiyorsanız Next 12 kez basın istemiyorum.

Doğru şekilde yapılırsa, sayılı sayfalama yaparak performans üzerinde herhangi bir darbe olmamalıdır. veritabanı üzerinde gerçekleştirilen bir sorgu sayısı sorgu dönen veri miktarı çok daha büyük bir faktör olduğunu unutmayın. Her iki durumda da, size bir sorguda ne gerek almak gerekir.

Bildiğim kadarıyla kullanım kolaylığı, bu tartışılabilir, ve app / kullanıcılara bağlıdır. hemen sonraki / önceki kullanarak daha basit, ama diğer daha seçenekleri sağlar ve daha kolay etrafında atlamak için yapabilirsiniz. Ben çoğu zaman sayılı pagination tercih, ama yine de kişisel bir tercih meselesi.

Ya gerçek sayfalama yaparken bir tek sayfanın veri daha fazla almak gerekmez; Sadece tüm kayıtları sayısını (ve her sayfada uyacak kayıt numarasını bilmeniz gerekir.

Bir kullanılabilirlik açısından, sayfalarına doğrudan bağlantıları olan kullanıcı o gitmek istediği sayfaya bilir, özellikle, büyük bir kazançtır. Eğer sayfaları çok sayıda varsa, (sayfa 7 Şu anda vardı, ve 99 toplam sayfa vardı varsayalım) bu gibi bağlantıları sunan byt, biraz onu kesecek isteyebilirsiniz:

1 2 3 ... 6 7 8 ... 97 98 99

Eğer veritabanından olası toplam sayfa sayısını almıyorsanız ardından bir kullanıcı tıklatın sonraki giderse tutarsız bir kullanıcı deneyimi ile sona erebilir ve göstermek için daha fazla bir şey değildir. Onlar Site kırık ya da yanlış bir şey olduğunu düşünebilir. Ben denenmiş ve gerçek şablonu kullanarak sayfa numaralarını gösteren sopa ile olur:

 [first, [#], [#], ... [previous|#], [current|#], [next|#] ... [#], [#], last] 

Ben madde ilk iki sayfada görünmüyor, onlar sonsuz sayfaları için "İleri" yi değil, yepyeni bir sorgu yapmazlar, kullanıcı vadede varsayalım.

Bu veritabanı sorguları açısından pahalı olabilir. Orada bir otomobil sitesi ve ben, yazın varsayalım "2010 Ford Ranger." Şimdi benim beklentim ilk sayfada, ben 2010 Ford Rangers görmek olduğunu ifade etti. Ben diğer yıl veya diğer şirketler görürseniz, ben büyük olasılıkla geri dönmek ve farklı terimler ya da ne değildir kullanarak tekrar aramak için girişim olacaktır.

Yani ilk adımı onlar malzeme arıyorsanız varsayarak, ilk birkaç sayfada bir kullanıcı için doğru sonuçlar geri almak için olduğunu düşünüyorum.

Sonra pagination için, ben büyük soru bunu yapmak istiyorum nasıl olduğunu varsayalım. Eğer memcache içine toplam sonuçlarını depolamak memcaching kullanabilirsiniz, o zaman sadece bir benzersiz bir kimliği saklamak.

Benim durumumda, sadece client bana soruyor ne bağlıdır. Ben kendi seçim var zaman daha kullanıcı dostu olduğu için, ben size gerçek Sayfalandırması dediğimiz için gidin.

<<Previous 1 | 2 | {3} | 4 | 5 |...| 15 | Next>>