570
צפיות
צפיות
38
תשובות
תשובות
שאלה שאפשר להוסיף לFAQ (תאריך MYSQL
אוקי מי שלא ידע ASP עובד עם 12/11/2005 עם "/" ואקסס מקבל את זה אבל כאשר משתמשים ב MYSQL הוא לא מקבל את זה הוא מקבל רק 12-11-2005 עכשיו אם למישהו יש ניסיון עם זה מה הפונקציה הכי קלה להפוך את now() שהוא נותן עם "" לNOW() שיתן עם "-" ?
38 תשובות
אני לא מכיר פונקציה בנויה…
אולי יש…
אבל אני הייתי עושה פונקציית Replace ובמקום "/" ישים "-".
בהצלחה.
טל.
מממ
dim dDate
dDate = year(date()) & "-" & month(date()) & "-" & day(date())
גם נכון! לא חשבתי על זה.
חשבתי על זה לפני שאכלתי אבל אחרי
שאכלתי נזכרתי שישנם פונקציות לטיפול בתאריכים ב-VBS כמו month, year, ו-day (נראה לי)
בכל אופן לדעתי אם הוא היה נכנס למדריך ה-VBS הוא היה מצליח בכוחות עצמו.
והדבר שהכי עדיף (בד"כ) זה להשתמש בפונקציות שהמסד נותן (במקרה הזה נראה לי currdate)
צודק. אבל יש יוצא מן הכלל…
שאלה לגבי משתמשים מחוברים.
אז ככה ניסיתי מלא דברים …
עשיתי קובץ GLOBAL והנה הוא:
<script language="vbscript" runat="server">
Sub Application_OnStart
Application("Current_Users") = 0
End Sub
Sub Session_OnStart
Application.lock
Application("Current_Users") = Application("Current_Users") + 1
Application.unlock
End Sub
Sub Session_OnEnd
Application.lock
Application("Current_Users") = Application("Current_Users") – 1
Application.unlock
End Sub
</script>
ויש לי דף התחברות והתנתקות ששם אני מעלה ומוריד את
Application("Current_Users")
ב 1
עכשיו רציתי גם לכתוב את שם המשתמש שמחובר אז עשיתי עמודה חדשה בטבלה של היוזרים שקוראים לה ONLINE ועשיתי לכולם ערך 0
ערך 0 = מנותק
ערך 1 או משהו אחר = מחובר
אז עכשיו בעמוד שהם מתחברים עשיתי UPDATE לעמודה שיכניס 1
ובעמודה שהם מתנתקים עשיתי שזה יכניס את הערך 0
עכשיו!
יש עם זה בעיה מי שלא לוחץ התנתק ופשוט סוגר את הדף של האתר העוגיה עדין נשארת פועלת וגם יהיה כתוב שהוא מחובר.
אם מישהו יכול לעזור לי בזה אני אהיה אסיר תודה
מממ, אני חושב.
תעשה את הפעולה של המסד נתונים בגלובל בפונקציה
Sub Session_OnEnd
וככה מתי שהמשתמש יוצא מהאתר בכל דרך שהיא הוא ירד מהרשימה.
תקנו אותי אם אני טועה.
טל.
אולי לא היבנתי אותך נכון אבל גם לי
יש רעיון .
אז ככה:
בגלובל אסא (global.asa)
ב Sub Session_OnEnd תשתמש בשאילתת UPDATE, ותחליף את הערך ל0. ובSession_OnStart תחליף את הערך ל1.
בהצלחה!
לא נראה לי שאפשר לעשות פקודה ASP
בGLOBAL
אה…
אז מצטער, חכה לתשובה ממיש'ו אחר… או שאני אחשוב על מש'ו 🙂
אין מה להצטער העיקר הכוונה 😀
אפשר לבצע פקודות ASP
בסגירת סיישן אבל התקשרות עם מסד מעולם לא הצלחתי לבצע בסיום סיישן :-/
לזה התכוונתי אבל כנראה טעיתי.
אז יש לי רעיון
כאשר הסישן נסגר…
תעשה – redirect לדף ותשלח אליו את ה id של המשתמש.
ובדף הזה תעשה את העבודה של חיבור למסד נתונים ועידכון השדה ל 1.
לא ככה?
Session שנסגר הוא לא בהכרח כאשר
המשתמש סוגר את הדף…
נכון, זה נסגר כ 5 דקות אחרי…
ואם עושים את הטיימאאוט = 0 ?
לא
הסיישן יכול להיסגר אפילו אם המשתמש עדיין לא יצא מהאתר.
הסיישן עקרונית נגמר אחרי 20 דקות (ברירת המחדל של הסיישן – ניתן לשינוי) מאז הקריאה האחרונה של הקליאנט לשרת.
כלומר אם המשתמש פשוט השאיר את הדף עומד במשך 20 דקות ולא שלח headers של HTTP לשרת במשך 20 דקות מצד השרת הלקוח הוא מת (=סיישן נסגר)
יש שתי אפשרויות:
1) הוא לא נוצר בכלל
2) הוא נוצר אבל לא נמחק אוטומטית כלומר – נמחק, רק כאשר אתה סוגר את הדף (בדומה לעוגיה)
ואתה יכול לנסות…. ותזחזיר לנו תשובה
תחזיר* חחח
בנוסף,
אתה יכול בקלות לגרום לסשן/אפליקיישן להסגר באופן יזום, פרטים בFAQ .
אוקיי… אז.
שיהיה קצת DELAY בעדכון של המשתמשים המחוברים…
אבל אין דרך לדעת מתי המשתמש סגר את הדפדפן? ואז לעלות דף חדש?
אני בטוח שיש. יש המון אתרים שכאשר סוגרים את הדף הם מקפיצים פופאפ…
יש אירוע בצד הלקוח
בשם onunload האירוע פועל בכל ריפרוש/כשעוברים מהדף.
אני לא הצלחתי להבין איך אפשר לקחת את הכתובת שאליה עוברים כאשר עושים onunload
כי אם אני אצליח לעשות זאת יש אפשרות נפלאה לסטטיסטיקה יפה כאשר אין לך גישה ללוג של השרת.
אי אפשר לעשות ONUNLOAD ואז משהו עם
HISTORY?
או RESPONSE.REDIRECT אם זאת השאלה שלך
history
יתן לך את הדף ממנו באת, לא לאן אתה הולך. response.redirect שייך בכלל ל ASP, אתה בטח מתכוון ל location.href. גם אם זה עובד, זה יעצבן משתמשים ולא יהיה לזה שום שימוש, בטח לא לסטטיסטיקות.
מה שכן אם היה אפשר לגלות
לאיםה המשתמש מתכוון לפנות זה היה עוזר. (לסטטיסטיקות למשל).
אבל משום שהאירוע מתבצע לפני שהדפדפן עובר לעמוד הבא (מן הסתם אחרת איך זה יתבצע?)
אז אין לנו אפשרות לדעת את הכתובת העתידית :-/
לא נכון
אתה יכול לשטול אירוע onclick שיתפוס לכל העמוד, לחזור לאלמנט שנלחץ ולגלות את הכתובת.
צודק.. שללתי מהר מידי
אבל אם המשתמש עובר לאתר אחר דרך שורת הכתובת של הדפדפן ?
למיטב ידיעתי אין לנו שליטה על כך.
גם לא
אתה יכול לתפוס את ה location.href באירוע onunload.
אולי תסכמו הכל ותסבירו לי על מה דבר
תם? בבקשה !! ?
בוא תסביר מה לא הבנת
ואל תבוא בדרישות.
אז זהו שלא…
עשיתי את הסקריפט הזה על מוזילה FF/IE ובאף אחד מהם לא התקבל…
<script type="text/javascript">
<!–<![CDATA[
onunload = function(){
alert(location.href);
}
// ]]> –>
</script>
כמו שאמרתי כבר onunload קורה לפני המעבר לאתר הבא.
וזה מה שכתוב ב-W3C לגבי זה:
The unload event occurs when the DOM implementation removes a document from a window or frame. This event is valid for BODY and FRAMESET elements
האירוע מתקיים ברגע שהמסמך נמחק אבל בפועל האירוע מתבצע גם לפני עליית האתר הבא…
צודק
יש לי בעיה בחיבור לבסיס נותונים!!!!
וזה קרה סתם פתאום עד היום האתר עבד טוב לא עשיתי לו שום דבר ופתאום מופיע לי הארור הזה !! למה זה קורה?
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[MySQL][ODBC 3.51 Driver]Can't connect to MySQL server on 'localhost' (10061)
/dbcon.asp, line 4
לא נראה לי שאני יכול להביא לפה את הפרטים של שורה 4 כי הססמא שלי שם והכל
תן את שורה ארבע, צנזר סיסמא
הנה שוהרה 4
con.open "DRIVER={MySQL ODBC 3.51 Driver};ns1.*.com;PORT=3306;DATABASE=dbsql;USER=*;PASSWORD=*;OPTION=3;"
למה ירדת שורה בDRIVER?