504
צפיות
צפיות
19
תשובות
תשובות
חלוקת הפורום לעמודים
שלום לכולם, נתקלתי בבעיה קטנה..
אני בונה פורום ב-ASP, ואני עובד עם 2 שאילתות (אחת להצגת הודעת האב והשנייה להצגת התגובות שלה), הכל עובד טוב ויפה…
אבל אני קצת מתקשה לחלק את הפורום (ההודעות) לעמודים…
בד"כ, כשזה עם שאילתה 1 אני לא מתקשה, כבר חילקתי הרבה דברים בחיי (חחח…).
עוד משהו, איך אני עושה "הקפצת הודעות"? ז"א – ההודעה שהגבתי לה עכשיו תקפוץ למעלה??
אני אודה מאוד למי שיוכל לעזור לי,
תודה ושבת שלום,
חגי.
19 תשובות
תן קצת יותר מידע
מבנה מסד נתונים [טבלאות], קוד שאתה מנסה להריץ [אם יש] וכו'.
בנוגע להקפצת הודעות – יש לך שדה תאריך של הנושא הראשי (לא מתי שהוא נכתב) אז פשוט תעדכן את התאריך לתאריך הנוכחי וזה "יקפוץ" מאחר וההודעות מסודרות לפי תאריך עדכון אחרון.
תשובות…
מבנה מסד הנתונים:
יש טבלה אחת בשם Forum.
המבנה של הטבלה הוא ככה:
ID
כותרת
גוף ההודעה
הודעת אב – פה מוכנס הקוד – הודעת אב / תגובה
שם משתמש
תאריך הודעה
תאריך כתיבת תגובה – בשביל ההקפצה
וכמובן שיש גם שלב – לסידור התגובות לפי החדש ביותר
———————————
כעיקרון, אני תמיד משתמש בקוד מסויים לחלוקת עמודים..
אבל הקוד שלי מסתמך על שאילתה אחת להציג בדף.
ובפורום אני מציג בשאילתה אחת את הודעות האב, ובשאילתה שנייה אני מציג את כל ההודעות של הודעות האב.
איך בדיוק אפשר לעזור לי?
קוד רלוונטי: להצגת ההודעות:
SQL = "SELECT * FROM [forum] WHERE [type]='NoTgova' ORDER BY DateOfLastTgova DESC"
Set rs = con.Execute(SQL)
WHILE NOT RS.EOF
%>
וקוד להצגת התגובות (רקורדסט חדש):
<%
'הצגת תגובות
SQL = "SELECT * FROM [forum] WHERE [OdatAV]='"& RS("id") &"' ORDER BY [level]"
Set RS2 = con.Execute(SQL)
WHILE NOT RS2.EOF
%>
זהו בערך…
אני יכול להציג את כל הקוד של הדף של הפורום – שהוא די קצר…
תודה מראש לעוזרים,
חגי.
הקפצה…
AnyOne?
תכתוב את ההודעה….
ותלחץ enter כמה פעמים וחזק,תראה זה קופץ,זה קפץ לי קודם.
שמע…
הקפצה נעשית ברגע שאתה מגיב וההגבה נעשתה עד 5 ימים מפרסום הנושא הראשי של ההודעה.
זה שאתה הורס את המקלדת שלך זה לא אומר שזה יקפיץ
לא הבנתי מה אתם רוצים ממני…
נראה לי שלא הבנתם אותי..
.לא הבנתי להקפיץ הודעות כאן…
אלא, בתור מתכנת, כשאני בונה פורום, איך "מקפיצים" הודעות —-> ז"א, ההודעה האחרונה שהגבתי אליה, "תעלה" לראש הדף?
הכיצד?
איזה קוד צריך להכניס?
מקווה שהבנתם אותי..
אגב, ניר?
אני? הורס מקלדת? לא הבנתי מה אתה רוצה ממני…
אותו דבר לגבי "פרדי"…
אני דיברתי אל פרדי
BH הסביר את הרעיון הכללי… את הביצוע נשאיר לך.
חגי תעשה ORDER BY TOP 1 נראה לי או
משהו כזה
סידור
אתה צריך לעדכן את שדה התאריך של עדכון ההודעה האחרון ובשאילתה לעשות סידור לפי התאריך הנ"ל ולפי ID ההודעה.
SELECT [fields] FROM tbl ORDER BY theDate DESC,ID DESC
איך אני מעדכן את השדה הנ"ל?
איך אני מעדכן את השדה תאריך של עידכון ההודעה ההאחרון?
וזו השאילתה שקיימת אצלי…
אתה מעדכן את השדה של הנושא
אליו מגיבים.
למשל אם אני מגיב לתגובה בנושא אז אתה צריך לעדכן את התאריך של הנושא של כל התגובות ולא של התגובה אליה אתה מגיב.
בשדה אתה מציב את התאריך הנוכחי (Now).
conn.Execute("UPDATE [tbl] SET rDate=#"&Now&"# WHERE ID="&rID)
אני אנסה את זה עכשיו…
תודה!
משום מה… זה לא עובד!
ז"א, הצלחתי "להקפיץ" רק הודעה אחת..
זה עידכן לי רק הודעה אחת, ויותר זה לא עבד…
מישהו יודע למה?
אמממ קוד??
תראה את הקוד שלך, נראה אם הוא בסדר.
פורומים נוספים?
אני עובד על תיכנות פורום בזמן הקרוב.
ויש משהו שהוא לא ברור לי…
למשל, יש לי כמה פורומים במערכת,
ובדף הראשי- יש את הרשימה של הפורומים.
כל קישור לפורום נכתב כך (לדוגמה):
Forum.asp?fid=1
Forum.asp?fid=2
Forum.asp?fid=3
כשמספר ה-fid מציין את מספר הפורום, אשר את כל ההודעות לפיו הוא יציג (וכן הלאה…).
מה קורה, אם משתמש מקליד בשורת הכתובת את הקישור הבא:
Forum.asp?fid=12 (למשל…)
זה יציג לו דף ריק (כאילו לא נכתבו הודעות בפורום), והוא בעצם יוכל להוסיף הודעה לפורום "הריק" הזה, וליצור בעצם כמה פורומים שהוא רוצה (יש הבנה עד כה??)…
מה אני עושה בנדון?
איך אני בדיוק מגדיר, שאם יש בקשה למספר פורום שלא קיים במערכת, המשתמש יועבר למספר הפורום האחרון?
(אותו דבר עם הוספת הודעות ותגובות).
אני מקווה שהבנתם למה אני מתכוון (אני מוכן להסביר שוב…).
תודה,
חגי.
אגב,
בדקתי את העניין, ובאמת אפשר לעשות את מה שאמרתי (לשנות את ה-fid ואז להציג את כל ההודעות לפורום "חדש").
די פשוט
אתה בודק אם rs.EOF = true ואם כן אתה שולף את הפורום האחרון ומבצע הפניה ל-ID שלו, אחרת ממשיך [הפורום קיים].
לא כ"כ ברור לי…
בדף שמציג את הפורום, אני אמור לרשום:
<%
if rs.EOF = true then
'הצגת הפורום
else
?
לא ממש הבנתי איך הולך הקוד של הבדיקה…
ו-2 שאלות נוספות…
כיצד למחוק אשכול הודעות שלם מהפורום?
איך אני עושה שאם אני מוחק את ההודעה הראשית (הודעת האב), אז כל ההודעות (התגובות- "ילדים") שלהן ימחקו?!
———————————————————-
מהי הדרך הכי יעילה לתת לכל פורום שם?
———————————————————-
תודה,
חגי.
הנה חגי כנס
נכון יש לי את ה ID של ההודעה למשל 5?
ובשביל לכתוב תגובה אתה צריך לקשר אותם ל ID מסוים בשביל שתדע לאיזה הודעה התגובות צריכות ללכת למשל IDRELATED אז לתוכו היית צריך להכניס 5 כי זה מקושר להודעה מספר 5 עכשיו בדף שאתה מוחק את ההודעה אתה גם עושה
sql = "SELECT * FROM תגובות where idrelated=הID של ההודעה שמחקת
וזהו 🙂