הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   הצגת 5 הודעות אחרונות בכל עמוד (https://hosts.co.il/forums/showthread.php?t=3521)

A.M.F 28-10-05 09:48

הצגת 5 הודעות אחרונות בכל עמוד
 
יצרתי מערכת של הוספת הודעות, ורציתי לדעת איך אני יכול לעשות שאחרי כל 5 הודעות, חמשת ההודעות הבאות יופיעו בעמוד הבא. אני מניח שזה קשור איכשהו ללואות בPHP אבל אני לא יודע איך בדיוק לקשר את זה...

תודה לעוזרים

hi_sorie 28-10-05 10:04

ציטוט:

נכתב במקור על ידי A.M.F
יצרתי מערכת של הוספת הודעות, ורציתי לדעת איך אני יכול לעשות שאחרי כל 5 הודעות, חמשת ההודעות הבאות יופיעו בעמוד הבא. אני מניח שזה קשור איכשהו ללואות בPHP אבל אני לא יודע איך בדיוק לקשר את זה...

תודה לעוזרים


PHP קוד:

$page=$_GET['page'];
$posts_start=$page*5;
$posts_end=$posts_start-5

ואז אתה עושה להציא מהמסד כל פעם מ page_start ל page_end

סתם משו יוצא דופן ...
אני מאמין שיש דרך יותר יעילה ...
אבל זה מה שעלה לי כרגע.

Dvirs.Net 28-10-05 10:04

תשתמש ב-LIMIT.
PHP קוד:

select [..] limit x,

x = הרשומה הראשונה שאתה מעוניין לשלוף
y = מספר רשומות שיוצגו בעמוד (כמה רשומות אתה שולף)

עבורך, אתה צריך לעשות משהו כזה:
PHP קוד:

select [..] limit x,

תכפיל את המשתנה x במספר העמוד שאתה נמצא.
אם אתה נמצא בעמוד 4 אז x=4*5.

A.M.F 28-10-05 10:31

לא הבנת את הקטע של הX.
מצד אחד, אמרת שהX זה הרשומה הראשונה שאני רוצה לשלוף, ואחרי זה, אמרת לי שבX, אני צריך להכפיל את מספר העמוד בכמות מספר הרשומות לעמוד.
אני רוצה שהרשומה הרשונה שזה יציג לי, יהיה הID של אותה תגובה, אז אני צריך כאילו לעשות את זה?
קוד:

limit id*5,5

Dvirs.Net 28-10-05 10:36

נגיד אתה בעמוד 2 ואתה מציג 5 רשומות בעמוד
אתה צריך להזין ב-X את הערך 10 כי זה בעצם אומר שאתה מעוניין לשלוף את ה-5 רשומות אחרי ה-10 הרשומות הראשונות.
בד"כ עושים חלוקה לעמודים ונותנים משהו כזה לקישורים: test.php?page=x
והוא תמיד יעלה ב-1 ולכן הפתרון שכתבתי לך (הכפלה) יעזור לך במקרה הזה או שפשוט תעשה
את זה כבר בקישורים עצמם (test.php?page=x*5).

מקווה שעכשיו הבנת :)

A.M.F 28-10-05 11:09

סבבה הבנתי אותך, אז אני עשיתי דבר כזה-
קוד:

$news = mysql_query ("SELECT * FROM news ORDER BY id DESC LIMIT 1*5,5 ");

while ($detailes = mysql_fetch_array($news)) {

וזה רשם לי את זה-
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource on line 8

ושורה 8 זה השורה של הלולאה. למה זה עשה את הבאג הזה? (לפי שהכנסתי את הלימיט זה היה בסדר)

בניה 28-10-05 11:41

בס"ד

תוסיף אחרי ה שאילתא or die(mysql_error());
כדי לבדוק אם יש שגיאה בשאילתא.


כל הזמנים הם GMT +2. הזמן כעת הוא 17:57.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ