09-06-11, 18:34 | # 1 |
חבר בקהילה
|
שאלה בנוגע לחלוקה לעמודים
יש לי קטע באתר שאני מחלק מידע שנשלף ממס הנתונים לעמודים..
הבעיה היא שזה יוצא לי 4517 עמודים, רציתי לשאול אם מישהו מכיר אלגוריתם טוב שיכול להציג לי את העמודים בצורה טובה.. למשל כמו בתוצאות החיפוש בגוגל... תודה רבה! |
09-06-11, 18:37 | # 2 |
עסק רשום [?]
|
את השיטה אתה יכול לראות כאן: http://webmaster.org.il/articles/php-paging
|
09-06-11, 18:43 | # 3 |
חבר בקהילה
|
זה לא מה שאני מחפש, אני לא רוצה להציג 4517 עמודים אחד אחרי השני חחח
כתבתי שאני מחפש משהו שדומה לגוגל משהו בסגנון: 1, 2, 3, 10, 50, 1000, 4517. תודה! |
09-06-11, 18:54 | # 4 |
חבר וותיק
|
קוד:
<?php $page = $_GET['page']; $page = $page < 1 ? 1 : $page; $per_page = 10; $limit = ceil($page * $per_page - $page); $query = "SELECT name FROM members LIMIT " .$limit. ", " .$per_page; $query = mysql_query($query, $link); while($row = mysql_fetch_assoc($query)) { // your template } $num_rows = mysql_num_rows("SELECT name FROM members"); $for = ceil($num_rows / $per_page); $up_to = 20; // set the maximux of page to show $up_to = ($up_to + $page) - 2; for($i = $page; $i <= $for; $i = $i + 1) { if($i == $page) { echo '<strong>' .$i. '</strong> '; } else { echo $i . ' '; } if($i > $up_to) break; else continue; } if($for > $up_to) print "...<br />סה'כ עמודים: " . $for; ?> |
09-06-11, 20:14 | # 5 |
מנהל פורום, עסק רשום
|
האלגוריתם מאוד פשוט:
אתה מציג X עמודים קדימה ו-X עמודים אחורה. זה בתנאי שיש לך את העמודים אחורה או קדימה - אם לא, אז אתה מציג לכיוון הנגדי את העמודים הנותרים. ז"א בסופו של דבר תמיד יהיה לך על המסך x*2+1 עמודים: X עמודים מכל כיוון + העמוד הנוכחי. אפשרויות נוספות (אם אתה לא רוצה לממש את ההצעה שלמעלה): 1. לעשות drop down לעמודים 2. פשוט כפתורי "עמוד הבא" ו"עמוד הקודם". אני תמיד משתמש באופציה הזאת בגלל שאני לא רוצה לשלוף את כמות הרשומות המתאימות לשאילתה (ללא ה-limit) על מנת לא להעמיס על ה-DB 3. נתקלתי בכמה plugin-ים של jquery שמסדרים יפה את כל העימוד |
09-06-11, 21:35 | # 6 |
חבר בקהילה
|
תודה רבה יגאל!
|
חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים) | |
|
|