שלח תשובה

זירת השאלות

550
צפיות
4
תשובות

ספירת שורות

,‏ 10 בינואר, 2007

היי לכולם!

אני מנסה לעשות מין תיבת מסרים קטנה לאתר ואני רוצה שברגע שהמשתמש נכנס לאיזור ההודעות זה יכתוב לו כמה הודעות שלא נקראו יש לו ומתוך כמה סה"כ, כך שזה יראה משהו כזה:


Inbox (3/8)


כאשר 3 זה מספר ההודעות שלא נקראו ו-8 זה סך ההודעות שיש לו בתיבה.

הטבלה שלי בנויה משדות הבאים:
Msg_id
Msg_sender
Msg_sendee
Msg_date
Msg_title
Msg_text
Msg_loc
Msg_stat

השדה Msg_loc נועד לסמן את מיקום ההודעה:
1) ההודעה בתיבת הודעות
2) ההודעה בפח אשפה

השדה Msg_stat הוא שדה תיבת סימון:
תיבה מסומנת – ההודעה נקראה
תיבה לא מסומנת – ההודעה לא נקראה

השדה Msg_sendee צריך להיות שווה למחרוזת User_id.

מכאן והלאה אין לי מושג מה לעשות. מישהו יכול לעזור בבקשה?
תודה רבה מראש!!!

תגיות:

4 תשובות

  1. לא הבנתי איפה נתקלת
    אתה צריך לעשות שאילתת שליפה על כל הרשומות שנמצאות בתיבת ההודעות של אותו משתמש, ולספור כמה מסומנות כנקראו וכמה יש בכללי (count).

    באיזה בסיס נתונים אתה משתמש?

    תעבור על המדריך sql כאן באתר, אני בטוח שתסתדר… אם יש לך בעיה ספציפית בהרכבת השאילתא תגיד מה בדיוק וננסה לעזור.

  2. יגאל55555 הגיב:

    הפונקציה COUNT
    לא ממש הבנתי איך משתמשים בה… יש לי את השאילתא הרגילה לשליפת מידע:


    dim rs_msg, sql_msg
    set rs_msg = Server.CreateObject("ADODB.RecordSet")
    sql_msg = "SELECT Msgs.Msg_id, Msgs.Msg_sender_id, Msgs.Msg_sendee_id, Msgs.Msg_date, Msgs.Msg_title, Msgs.Msg_text, Msgs.Msg_loc, Msgs.Msg_stat FROM Msgs WHERE Msgs.Msg_sendee_id=" & user_id & " ORDER BY Msgs.Msg_date DESC"
    rs_msg.Open sql_msg, conn

    איך עכשיו אני סופר כמה הודעות יש למשתמש הזה סה"כ וכמה מהן חדשות?

    תודה רבה מראש!

  3. השימוש הוא כזה:


    SELECT COUNT(*) as TotalMessages
    FROM Messages
    WHERE UserID=13

    SELECT COUNT(*) as NewMessages
    FROM Messages
    WHERE IsNew=true AND UserID=13

    אתה יכול להריץ אותן בנפרד, או כתתי שאילתות.

שלח תשובה