logikanya mungkin jadi lebih sederhana kalo kita 
mengusahakan agar ANGKA_SAAT_INI berada di tengah segment:

ANGKA_SAAT_INI = round(ITEM_SAAT_INI/JUM_ITEM_PER_ANGKA)
ANGKA_START    = max(1, ANGKA_SAAT_INI-round(JUM_ANGKA_PER_SEGMENT/2))
ANGKA_END      = min(MAX_ANGKA, ANGKA_SAAT_INI+
                 JUM_ANGKA_PER_SEGMENT-round(JUM_ANGKA_PER_SEGMENT/2)-1)

Erga Munggaran wrote:
> 
> Hi mailinglist reader,
> Saya mempunyai data dan gambar2 di database. Setiap gambar/data tersebut
> mempunyai kategori sendiri2. Data ini berada di ujung kategori atau berada
> di 'daun' tree kategori. Agar tidak berat ditampilkan di web, maka saya
> pecah tiap tampilan tersebut menjadi hanya 10 data tiap tampilan. Padahal
> banyak kategori yang berisi lebih dari 10 data. Sehingga dibuat multipage.
> Setiap page ada link ke page lain dan dalam bentuk angka. Mungkin
> www.iklanbaris.co.id bisa dijadikan contoh.
> Misalnya kategori A mempunyai 107 data sehingga linknya berupa:
> [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]
> RDBMS yang saya gunakan adalah MySQL, tidak masalah saya bisa menggunakan
> perintah LIMIT. Tetapi yang menjadi masalah adalah tampilan link bernomer
> ini. Bila data tersebut berjumlah 300'an data. Maka link bernomer ini
> menjadi 30'an. Cukup jelek di tampilan. Maka pemecahannya adalah, dengan
> menampilkan sebagian link bernomer ini. Misalnya hanya dibatasi 10 link
> saja. Sehingga tampilannya menjadi:
> [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]
> Apabila kita klik [9] atau [10] maka yang tampil adalah:
> [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15]
> Jadi dua angka terakhir akan menampilkan lima angka yang ada di segment
> pertama, plus 5 angka segment selanjutnya.
> Bila dua angka pertama di klik, maka akan ditampilkan lima angka di
> segment sebelumnya dan 5 angka segment tadi berada, kecuali segment tempat
> berada itu adalah segment pertama. Jadi parameter yang ada:
> - JUM_ITEM_PER_ANGKA = 10
> - JUM_ANGKA_PER_SEGMENT = 10
> - JUM_ANGKA_PENAMBAHAN_SEGMENT = 5
> - JUM_ANGKA_PINDAH_SEGMENT = 2
> - JUM_ITEM = banyaknya data di database
> - MAX_ANGKA = round(JUM_ITEM/JUM_ITEM_PER_ANGKA) -> pembulatan keatas.
> Kira2 bagaimana logika programmingnya. Sekedar tambahan saya menggunakan
> php3
>  --
> [EMAIL PROTECTED], @ThePentagon.com, @geocities.com
> http://jupiter.centrin.net.id/~erganov/ http://www.cryogen.com/erganov/
> Join to Indonesia Linux User Group at
> http://clubs.yahoo.com/clubs/indonesialinuxusergroup
> 
> -= Dual T3 Webhosting on Dual Pentium III 450 - www.indoglobal.com =-
> To unsubscribe, e-mail : [EMAIL PROTECTED]
> To subscribe, e-mail   : [EMAIL PROTECTED]
> Netika BerInternet     : [EMAIL PROTECTED]

--
Steven Haryanto <[EMAIL PROTECTED]>

-= Dual T3 Webhosting on Dual Pentium III 450 - www.indoglobal.com =-
To unsubscribe, e-mail : [EMAIL PROTECTED]
To subscribe, e-mail   : [EMAIL PROTECTED]
Netika BerInternet     : [EMAIL PROTECTED]

Kirim email ke