Logo

רד-בורד: ארכיון

ראשי > בניית אתרים > global.asa

2004-05-15 22:47 ml2004
<% response.write "מבקר מספר" &application ("counter") %>
אם מישהו מכיר את התקן GLOBAL.ASA ומכיר את הפונקציה הנ"ל, ויכול להגיד לי למה זה לא עובד אני ישמח מאד..

תודה.
2004-05-15 22:51 Admin
יכול להיות שאתה משתמש בשרת חינמי שלא מאפשר הרצה של הקובץ (כדוגמת Brinkster.com)

אם אתה רוצה, יש דרך אחרת להציג מספר מחוברים למערכת בו זמנית (באמצעות מסדי נתונים).
2004-05-15 22:59 ml2004
אני יודע, אבל הבעיה שאני צריך את זה לפרוייקט שנתי והקריטרייונים הם שימוש בתקן הזה..
2004-05-15 23:02 Admin
לדעתי אם תציג את המספר מחוברים למערכת בשימוש עם מסד נתונים, שזה הרבה יותר מסובך (ומדויק??)
משימוש ב-GLOBAL.ASA, צריך לתת לך ציון יותר גבוהה (אתה לא חושב?).
בכל-מקרה, אם אתה חייב להשתמש בקובץ, אז תגיד קודם מה הבעייה, ואיפה אתה בודק את הקובץ? על המחשב
(IIS,PWS,APACHE??) או על שרת (פרטי\חינמי? איזה?)
2004-05-15 23:08 ml2004
הקטע שאני בונה מסד נתונים (לא פורום) והמורה שלי ביקשה שאני ישתמש פונקציה הזאת כדי להציג את מספר הגולשים שנכנסו, אל תשאל אותי למה דווקא ככה אבל אני מקשיב למורה..

בכל מקרה , אני בודק אותו על IIS במחשב בבית הספר, אני לא בטוח מה הבעיה כי אם הייתי יודע כנראה שלא הייתי שואל, אבל אני חושב שיכול להיות שהמיקום לא נכון או שיכול להיות שיש עוד איזשהי פונקציה שאליה אני צריך לגשת, מה אתה חושב?
2004-05-15 23:12 Admin
תבדוק אם הקוד שלך תואם פחות או יותר לקוד פה:
http://www.w3schools.com/asp/asp_globalasa.asp

Global.asa:

<script language="vbscript" runat="server">

Sub Application_OnStart
Application("visitors")=0
End Sub

Sub Session_OnStart
Application.Lock
Application("visitors")=Application("visitors")+1
Application.UnLock
End Sub

Sub Session_OnEnd
Application.Lock
Application("visitors")=Application("visitors")-1
Application.UnLock
End Sub

</script>


bla.asp:

<html>
<head>
</head>
<body>
<p>
There are <%response.write(Application("visitors"))%>
online now!
</p>
</body>
</html>
2004-05-15 23:18 ml2004

<script LANGUAGE=VBscript RUNAT=Server >
Sub Application_OnStart
Application("counter")=0
End Sub


Sub Session_OnStart
Application("counter")= Application("counter")+1
session("username")=""
session("memberOK")= "no"
End Sub


</script>
זה מה שרשום אצלי.
2004-05-15 23:22 Admin
מוזר, לא מכיר את הקוד כמו שהוא הולך אצלך..
תשנה למה שכתוב בהודעה הקודמת שלי, ותבדוק, אולי יש בעייה בקוד שלך, ועם הקוד שאני נתתי זה יעבוד..
2004-05-16 13:30 Echo
אתם מדברים על שני דברים שונים
ml2004- אתה מדבר על מונה מבקרים כללי מרגע פתיחת האתר
שחף- אתה מדבר על כמה מבקרים יש בו זמנית כרגע באתר

עכשיו לבעייה שלך
יש ל IIS בעייה עם global
אתה צריך להגדיר תיקיה וירטואלית לאתר שלך ב IIS בשביל שזה יעבוד
כדי לעשות את זה אתה צריך להכנס להגדרות שלו
בלוח בקרה אתה נכנס ל Administrative Tools ושמה יש סמל לבן כזה מוזר אז אתה נכנס לזה
הקיצר שמה אתה נכנס מצד שמאל יש כפתור advance (הכי למטה)
אתה לוחץ עליו ואז יש רשימה של מלא תיקיות
אלה תיקיות וירטואליות, ה IIS מתיחס לכל אחת כזאת כאל אתר בפני עצמה
עכשיו אתה לוחץ על new
או שיש שמה כפתור virtual directory ושמה אתה לוחץ עליו ואז new זה לא משנה
בקיצר במקום שצריך לבחור תיקיה אתה בוחר את התיקיה הראשית של האתר שלך
אחר כך יש מקום לתת לה שם
תתן את אותו השם כמו התיקיה שלך
ואז תלחץ ok מלא פעמים עד שתצא מהכל ובסוף תחזור למסך הראשי של ה IIS ואז תסגור אותו רגיל
אחרי זה זה אמור לעבוד

בהצלחה
2004-05-16 14:15 Admin
סליחה על הטעות, כפי ש-Echo כתב, פשוט לא הנחתי שמישהו ישתמש בקובץ הזה בשביל להציג מונה מבקרים,
כאפשר לעשות את זה בצורה הרבה יותר קלה ופשוטה דרך מסד נתונים:
update table set counter=counter+1
מה גם שאני מכיר את השימוש בקובץ עבור הצגת מספר מחוברים לאתר, לכן זה הדבר הראשון עליו חשבתי.

מצטערת שהטעתי אותך
2004-05-23 13:19 Echo
יש הגיון לעשות את זה בעזרת global
ככה שעושים refresh או שחוזרים לדף הבית אז זה לא גודל עוד פעם (אם אתה בנאדם הגון)
וגם אם הדף הראשון שאתה נכנס אליו הוא לא דף הבית אז זה גדל
עמודים: 1