חילוק דפים ב JS..

dirtrider

New member
חילוק דפים ב JS..

בניתי פורום משהו במבנה של תפוז אבל יש לי בעיה בחילוק לדפים... הנה שורת הוצאת נתונים מהדאטבייס והפונקציה:
show(0); function show($id) { GLOBAL $table,$id,$offset,$limit; $query1 = mysql_query("SELECT * FROM $table WHERE parent='$id' order by id desc");​
אם אני מוסיף פה LIMIT אז בעמוד הראשון אין בעיה אך כשעוברים לשאר הדפים הסקריפט מציג לי רק את הPARENT יעני רק את הנושאים בלי תגובות.. ישבתי וחשבתי המון ולא מצאתי איך אני יכול לחלק בצורה נורמאלית לדפים את הפורום.. אולי יש איזה סקריפט בג'אווה או משהו שיכול לחלק לי לדפים ? תודה.
 

dirtrider

New member
איך? ככה?

if ($id=0) { $query1 = mysql_query("SELECT * FROM $table WHERE parent='$id' order by id desc limit $offset,$limit"); } else { $query1 = mysql_query("SELECT * FROM $table WHERE parent='$id' order by id desc"); }​
לא עובד, זה מציג אינספור פעמים איזה הודעה.. (את ההודעה הPARENT האחרונה שנכתבה...)
 

N i X

New member
הנה משהו שאולי יעזור לך...

זה פונקציה שכתבתי לאחד הסקריפטים שעשיתי, אולי זה יעזור לך
function print_news($sql_data, $database, $news_count, $page, $link) { global $news_per_page, $time_offset; print('<p align="center" dir="rtl"><table border="0" algin="center" width="70%">'); while (list($headline, $item, $user, $TS) = mysql_fetch_row($sql_data)) { $date = gmdate("l F, d", $TS + $time_offset); $time = gmdate("H:i:s", $TS + $time_offset); $get_email = mysql_query("SELECT * FROM `newsflash_users` WHERE login='$user'", $database); list( , , $user_mail, ) = mysql_fetch_row($get_email); print("<tr width=\"35%\"><td><table border=\"0\" bgcolor=\"lightsteelblue\" width=\"100%\" align=\"center\"><td><b>$headline</b> - <a href=\"mailto:$user_mail\">$user</a></td><td>$date $time</td></table></td></tr>"); print("<tr><td><p dir=rtl>$item</p></td></tr>"); print('<tr><td><table border="0" width="100%" align="center"><td>'); print("<a href=\"?action=all_msg&all_msg_user=$user\">כל הידיעות של המשתמש הזה</a></td><td><a href=\"?action=view_info&view_user=$user\">ראה פרטי משתמש</a></td>"); print('</table></tr></td>'); } print('</table></p>'); print("<center><p dir=rtl>עמודים: "); for ($i=1; $i <= ceil($news_count / $news_per_page); $i++) { if ($i != $page) { print("<a href=\"?page=$i&$link\">$i</a> "); } else { print("$i ");} } print("<br>"); print("סה\"כ ידיעות: $news_count<br></p></center>"); }​
 

N i X

New member
אופס, שכחתי משהו...

וכדאי לקרוא לפונקציה מה שאני עושה זה:
if (!isset($page)) { $page = 1; } $showed_msges = ($page - 1) * $news_per_page; $result = mysql_query("SELECT * FROM `newsflash` ORDER BY `timestamp` DESC LIMIT $showed_msges, $news_per_page", $dbi); print_news($result, $dbi, $news_count, $page, null);​
 

N i X

New member
אוף, מה יהיה... שוב שכחתי שורה

בהודעה הקודמת, השורה הזאת אמורה להיות בהתחלה:
$news_count = mysql_num_rows ( mysql_query("SELECT * FROM `newsflash` ORDER BY `timestamp`", $dbi) );​
 
למעלה