שלח תשובה

זירת השאלות

548
צפיות
2
תשובות

HELP

,‏ 29 בפברואר, 2004


קודם כול תודה שנכנסתם להודעה שלי…
עכשיו, כרגיל אתם יודעים שיש לי הרבה בעיות עם ASP ואני חיייב את עזרתכם.

הכנתי משפט תנאי שבו אני רוצה לשלוף 2 דברים מהדטא בייס
המשפט אומר שאם יש בטבלת הDAY את התאריך של DAY (תאריך יומי) ו אם יש בטבלת הMONTH את התאריך של MONTH (תאריך חודשי) אז הוא יציג לי את כול מי שיש לו את התאריכים האלו ב2 הטורים האלו.

הינה המשפט:


<% if r.fields("day") = " & Day(date) & " and r.fields("month") = " & Month(date) & " then %>



הינה כול הקוד:


<html dir=rtl><body>
<%
set c=server.createobject("adodb.connection")
c="provider=microsoft.jet.oledb.4.0; data source="& server.MapPath("date.mdb") &""
set r=server.createobject("adodb.recordset")
r.activeconnection=c
r.open "select * from xxx order by id DESC"
%>
<% if r.fields("day") = " & Day(date) & " and r.fields("month") = " & Month(date) & " then %>
ישנם – חוגגי יום הולדת:<br>
<% do until r.EOF %>
<%
response.write "<b>" &r.fields("name") &"</b>"
%>
 l 
<%
r.movenext
loop
%>
<% Else %>
אין משתמשים שחוגגים היום יום הולדת!
<% End if %>
<% set c = nothing: set r = nothing %><br><Br>
תאריך א:<br>
<%=day(date) %><br>
תאריך ב:<br>
<%= month(date) %>
</body></html>


הקוד פועל אבל הוא תמיד מציג לי את " אין אנשים שחוגגים ימי הולדת היום"

בקשה תעזרו לי!!

תודה מראש לכולם!

תגיות:

2 תשובות

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

    לא!!! אתה לא בונה נכון
    אתה יכול לעשות שדה מסוג תאריך/שעה במסד נתונים שלך ואז לבדוק אם יש את היום והחודש ע"י שימוש ב-JS בצד הלקוח

    <%
    rs.Open "SELECT tbl.date, tbl.name FROM tbl ORDER BY tbl.id DESC"
    recArray = rs.getRows()
    %>
    <script language="JavaScript" type="text/javaScript">
    var userDate = new Date(<% =rs.fields(date) %>);
    var today = new Date(<% =date() %>);
    if ((today.getDate()==userDate.getDay) && (today.getMonth==userDate.getMonth())){
    document.write("Today hava happy day to: <br>")
    <% for i=0 to uBound(recArray,2) %>
    document.write(<% =recArray(1,i) %>)
    <% next %>
    }else{
    document.write("Today haven't for everyOne happy day")
    }
    </script>

    בעצם מה עשיתי בקוד פתחתי את הרקורדסט עם שני שליפות שליפת התאריך ושליפת השם (בהנחה שיש לך שני שדות כאלו) הכנסתי את הכל לתוך מערך getRows פתחתי קטע קוד בצד הלקוח ב-JS הכנסתי לתוך משתנה userDate את התאריך מהמסד ופתחתי עוד משתנה שבתוכו יש את התאריך של היום ואז בניתי התנייה בין התאריכים ע"י התכונות של אובייקט date ועם היא נכונה אז מתבצעת לולאה בצד השרת המדפיסה בצד הלקוח את השם של כל המשתמשים שיש להם יומולדת באותו יום ואם ההתנייה לא נכונה אז זה מדפיס הודעה אחרת וזהו

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

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

שלח תשובה