שלח תשובה

זירת השאלות

504
צפיות
19
תשובות

חלוקת הפורום לעמודים

,‏ 3 בדצמבר, 2004

שלום לכולם, נתקלתי בבעיה קטנה..
אני בונה פורום ב-ASP, ואני עובד עם 2 שאילתות (אחת להצגת הודעת האב והשנייה להצגת התגובות שלה), הכל עובד טוב ויפה…
אבל אני קצת מתקשה לחלק את הפורום (ההודעות) לעמודים…
בד"כ, כשזה עם שאילתה 1 אני לא מתקשה, כבר חילקתי הרבה דברים בחיי (חחח…).

עוד משהו, איך אני עושה "הקפצת הודעות"? ז"א – ההודעה שהגבתי לה עכשיו תקפוץ למעלה??

אני אודה מאוד למי שיוכל לעזור לי,
תודה ושבת שלום,
חגי.

תגיות:

19 תשובות

  1. BuildHome הגיב:

    תן קצת יותר מידע
    מבנה מסד נתונים [טבלאות], קוד שאתה מנסה להריץ [אם יש] וכו'.

    בנוגע להקפצת הודעות – יש לך שדה תאריך של הנושא הראשי (לא מתי שהוא נכתב) אז פשוט תעדכן את התאריך לתאריך הנוכחי וזה "יקפוץ" מאחר וההודעות מסודרות לפי תאריך עדכון אחרון.

  2. Hagai2005 הגיב:

    תשובות…
    מבנה מסד הנתונים:
    יש טבלה אחת בשם 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
    %>

    זהו בערך…
    אני יכול להציג את כל הקוד של הדף של הפורום – שהוא די קצר…

    תודה מראש לעוזרים,
    חגי.

  3. פרדי הגיב:

    תכתוב את ההודעה….
    ותלחץ enter כמה פעמים וחזק,תראה זה קופץ,זה קפץ לי קודם.

  4. ניר טייב הגיב:

    שמע…
    הקפצה נעשית ברגע שאתה מגיב וההגבה נעשתה עד 5 ימים מפרסום הנושא הראשי של ההודעה.
    זה שאתה הורס את המקלדת שלך זה לא אומר שזה יקפיץ

  5. Hagai2005 הגיב:

    לא הבנתי מה אתם רוצים ממני…
    נראה לי שלא הבנתם אותי..
    .לא הבנתי להקפיץ הודעות כאן…

    אלא, בתור מתכנת, כשאני בונה פורום, איך "מקפיצים" הודעות —-> ז"א, ההודעה האחרונה שהגבתי אליה, "תעלה" לראש הדף?
    הכיצד?
    איזה קוד צריך להכניס?
    מקווה שהבנתם אותי..

    אגב, ניר?
    אני? הורס מקלדת? לא הבנתי מה אתה רוצה ממני…
    אותו דבר לגבי "פרדי"…

  6. ניר טייב הגיב:

    אני דיברתי אל פרדי
    BH הסביר את הרעיון הכללי… את הביצוע נשאיר לך.

  7. god הגיב:

    חגי תעשה ORDER BY TOP 1 נראה לי או
    משהו כזה

  8. BuildHome הגיב:

    סידור
    אתה צריך לעדכן את שדה התאריך של עדכון ההודעה האחרון ובשאילתה לעשות סידור לפי התאריך הנ"ל ולפי ID ההודעה.
    SELECT [fields] FROM tbl ORDER BY theDate DESC,ID DESC

  9. Hagai2005 הגיב:

    איך אני מעדכן את השדה הנ"ל?
    איך אני מעדכן את השדה תאריך של עידכון ההודעה ההאחרון?
    וזו השאילתה שקיימת אצלי…

  10. BuildHome הגיב:

    אתה מעדכן את השדה של הנושא
    אליו מגיבים.
    למשל אם אני מגיב לתגובה בנושא אז אתה צריך לעדכן את התאריך של הנושא של כל התגובות ולא של התגובה אליה אתה מגיב.
    בשדה אתה מציב את התאריך הנוכחי (Now).
    conn.Execute("UPDATE [tbl] SET rDate=#"&Now&"# WHERE ID="&rID)

  11. Hagai2005 הגיב:

    משום מה… זה לא עובד!
    ז"א, הצלחתי "להקפיץ" רק הודעה אחת..
    זה עידכן לי רק הודעה אחת, ויותר זה לא עבד…
    מישהו יודע למה?

  12. BuildHome הגיב:

    אמממ קוד??
    תראה את הקוד שלך, נראה אם הוא בסדר.

  13. Hagai2005 הגיב:

    פורומים נוספים?
    אני עובד על תיכנות פורום בזמן הקרוב.
    ויש משהו שהוא לא ברור לי…

    למשל, יש לי כמה פורומים במערכת,
    ובדף הראשי- יש את הרשימה של הפורומים.
    כל קישור לפורום נכתב כך (לדוגמה):
    Forum.asp?fid=1
    Forum.asp?fid=2
    Forum.asp?fid=3
    כשמספר ה-fid מציין את מספר הפורום, אשר את כל ההודעות לפיו הוא יציג (וכן הלאה…).

    מה קורה, אם משתמש מקליד בשורת הכתובת את הקישור הבא:
    Forum.asp?fid=12 (למשל…)
    זה יציג לו דף ריק (כאילו לא נכתבו הודעות בפורום), והוא בעצם יוכל להוסיף הודעה לפורום "הריק" הזה, וליצור בעצם כמה פורומים שהוא רוצה (יש הבנה עד כה??)…
    מה אני עושה בנדון?
    איך אני בדיוק מגדיר, שאם יש בקשה למספר פורום שלא קיים במערכת, המשתמש יועבר למספר הפורום האחרון?
    (אותו דבר עם הוספת הודעות ותגובות).
    אני מקווה שהבנתם למה אני מתכוון (אני מוכן להסביר שוב…).

    תודה,
    חגי.

    אגב,
    בדקתי את העניין, ובאמת אפשר לעשות את מה שאמרתי (לשנות את ה-fid ואז להציג את כל ההודעות לפורום "חדש").

  14. BuildHome הגיב:

    די פשוט
    אתה בודק אם rs.EOF = true ואם כן אתה שולף את הפורום האחרון ומבצע הפניה ל-ID שלו, אחרת ממשיך [הפורום קיים].

  15. Hagai2005 הגיב:

    לא כ"כ ברור לי…
    בדף שמציג את הפורום, אני אמור לרשום:


    <%
    if rs.EOF = true then
    'הצגת הפורום
    else
    ?

    לא ממש הבנתי איך הולך הקוד של הבדיקה…

  16. Hagai2005 הגיב:

    ו-2 שאלות נוספות…
    כיצד למחוק אשכול הודעות שלם מהפורום?
    איך אני עושה שאם אני מוחק את ההודעה הראשית (הודעת האב), אז כל ההודעות (התגובות- "ילדים") שלהן ימחקו?!
    ———————————————————-
    מהי הדרך הכי יעילה לתת לכל פורום שם?
    ———————————————————-

    תודה,
    חגי.

  17. god הגיב:

    הנה חגי כנס
    נכון יש לי את ה ID של ההודעה למשל 5?
    ובשביל לכתוב תגובה אתה צריך לקשר אותם ל ID מסוים בשביל שתדע לאיזה הודעה התגובות צריכות ללכת למשל IDRELATED אז לתוכו היית צריך להכניס 5 כי זה מקושר להודעה מספר 5 עכשיו בדף שאתה מוחק את ההודעה אתה גם עושה
    sql = "SELECT * FROM תגובות where idrelated=הID של ההודעה שמחקת
    וזהו 🙂

שלח תשובה