שלח תשובה

זירת השאלות

522
צפיות
29
תשובות

בעייה משונה ביותר

,‏ 6 באוקטובר, 2004

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

function logout(){
window.open("/logoff.asp","opener","height=100 , width=300");
}
קישור::
<A HREF="javascript:logout();" >התנתק</A>
דף הפופ אפ::
<%
Session("Login")=""
Session("Logged")=false
Session("Admin")=false
%>
<CENTER><B>נותקת מן המערכת </B><BR>
<script type="text/javascript">
setTimeout("self.close()",3000);
setTimeout("opener.location.reload()",3000);
</script>

ועוד משהו   ה SPAN שהציעו לי בתפוז(פורום 130) לא פעל
תודה רבה ומצטער שזה כל כך ארוך  נועם צברי

תגיות:

29 תשובות

  1. אוריקס הגיב:

    יכול להיות שהדף נטען מה chache
    [או איך שלא כותבים את זה]
    נסה לשים את זה בראש שני הדפים…


    Response.CacheControl = "Public"

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

    זה של ASP ?
    לא ראיתי את זה במדריך ה-ASP…

  3. MasterMind הגיב:

    עדיין אותו דבר
    קופץ אבל לא מוחק את הסיישנים
    משונה
    ויש לי עוד שאלה (אבל אל תתעלמו מהראשונה היא חשובה גם)
    יש לי את הJOIN הזה עכשיו הוא מוציא לי את השם משתמש לפי הAUTHER
    ויופי הכול פועל רק שזה מוציא לי את השם משתמש ואני שהוא יביא לי את ה ID של הכתב (זה למערכת כתבות)
    הנה הקוד


    rs.open "select top 5 news.ID, news.Date,  news.Story, news.Auther, news.Subject  from news INNER JOIN Users ON Users.Nick = news.Auther order by news.ID ASC , news.DATE DESC",conn,3,3

    תודה רבה   נועם צברי

  4. אוריקס הגיב:

    המממ
    1. בעניין ה sessionים נסה לשים:

    Response.Expires = 0

    בראש שני הדפים.

    2. לא הבנתי את השאלה על ה JOIN

  5. MasterMind הגיב:

    עדיין לא פועל…….
    ממש משונה (עזבו  לא משנה אני אעשה את זה בדף נפרד רגיל)
    לגבי ה JOIN  בניתי מערכת כתבות שליד שם הכתבה מופיע שם המשתמש שרשם אותה
    אז לפני  ה JOIN זה היה מוציא לי את השם משתמש הראשון לכתבה הראשונה
    ועכשיו אחרי ה JOIN זה מוציא את השם משתמש המתאים אבל זה עדיין מביא לי
    את השם משתמש  ואני צריך את ה ID של השם משתמש הספציפי הזה ….
    הבנתם ?
    ואני צריך את זה גם למערכת פורומים ….
    עכשיו ניסיתי לעשות USERS.ID=NEWS.AUTHER והציג לי שגיאה של TYPE MISMATCH (ואני מבין למה, כי השם משתמש הוא שם וה ID הוא מספר)
    אז כיצד אפשר לעשות את זה ?
    תודה מראש  נועם צברי

  6. אוריקס הגיב:

    ועוד בעניין ה sessionים
    נסה לשים את זה בראש שני הדפים


    Response.CacheControl = "No-cache"

  7. MasterMind הגיב:

    גם אחרי ה NO CHACH
    (חחח רשמנו באותו זמן)
    לא עובד… אבל כבר אמרתי  אני אעשה את זה בדף נפרד
    תודה בכל מקרה
    ולגבי השאלה על ה JOIN סתכל בהודעה הקודמת שלי
    תודה  נועם צברי

  8. MasterMind הגיב:

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

  9. BuildHome הגיב:

    תשובה
    שומרים את ID המשתמש ואז שולפים את שם המשתמש לפי אותו ID.

    למה להשתמש בשדה טקסט כשאפשר לייעל ולהשתמש בשדה מספר?

  10. MasterMind הגיב:

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


    rs.open "select top 5 news.ID, news.Date,  news.Story, news.Auther, news.Subject  from news INNER JOIN Users ON Users.Nick = news.Auther order by news.ID ASC , news.DATE DESC",conn,3,3

    תודה רבה מראש  נועם צברי

  11. BuildHome הגיב:

    תשובה
    1. אתה שם בשדה Auther שלך את ID המשתמש (שדה מספר) ולא את שם המשתמש.

    2. אתה צריך להשתמש בשאילתה כזו:
    rs.open "select top 5 news.ID, news.Date,  news.Story, news.Auther, news.Subject,users.nick  from news INNER JOIN Users ON Users.ID=news.Auther order by news.ID ASC , news.DATE DESC",conn,3,3

    rs("nick")

  12. BuildHome הגיב:

    עוד דבר
    תריץ את השאילתה הנ"ל (רק שאילתה) באקסס ותראה את התוצאה המתקבלת ותדע כיצד להשתמש בתוצאה ותבין יותר כיצד היא מתבצעת.

  13. MasterMind הגיב:

    תגיד…
    אי אפשר פשוט להריץ אותה במסד כשאילתה וברמת הקוד רק לשלוף את המידע ?
    כי היא עושה לי בעיות  שיניתי את סוג התא למספר ושם רשמתי את המספרים של הכתבים
    עכשיו ה ID יוצא בסדר  אבל השם משתמש לא !
    אז האם אפשר(להריץ במסד ורק לקרוא לה ברמת הקוד)?

  14. BuildHome הגיב:

    אין סיבה שהתוצאה של השם משתמש לא
    תהיה תקינה (אלא אם כן הקוד שלך לא תקין).
    אתה צריך ללמוד על סוגי ה-JOIN.

  15. MasterMind הגיב:

    מה אני אגיד לך ….
    אולי באמת טעיתי  הנה הקוד שרשמתי
    (השגיאה בשורה הזאת)

    rs.open "select top 5 news.ID, news.Date, news.Story, news.Auther, news.Subject,users.nick from News INNER JOIN Users ON Users.ID=news.Auther order by news.ID ASC , news.DATE DESC",conn,3,3

    והנה השגיאה


    Microsoft JET Database Engine (0x80040E10)
    No value given for one or more required parameters.

    וככה נראה הקישור לפרטי המשתמש


    <A HREF="/User_DT.asp?ID=<%=news_arr(3,i)%>"><%=news_arr(5,i)%></A>

    תודה רבה מראש   נועם צברי

  16. BuildHome הגיב:

    השגיאה
    אומרת שאתה מנסה לשלוף בשאילתה שדה אשר לא קיים.
    תבדוק את העניין עם השדה nick (אם הוא קיים) ותראה אם אתה מקבל תוצאה כאשר אתה מריץ את השאילתה באקסס.

  17. silagy הגיב:

    תשובה
    אחרי ה- users תשנה את הנקודה לפסיק

  18. MasterMind הגיב:

    איפה? SILAGY
    ולבילד הרצתי את את הקוד האקסס ובוא ביקש ממני מספר והקשתי לו 1
    והציג לי גם את הרשומה השנייה והניק יצא בשניהם ADMIN כלומר זה עובד
    אבל לא עובד…
    צירפח תמונה כולל הסברים…

  19. Hagai2005 הגיב:

    בעניין ה-Sessionים…
    אולי תנסה לשים את הקוד הזה, בתחילת העמוד:


    <%session.contents.removeall() %>

    כמובן אחרי ה- Response.Expires…
    תנסה, ותראה אם זה יעזור,
    כעיקרון, זה אמור למחוק את כל הסיישנים.

    בהצלחה,
    חגי.

  20. BuildHome הגיב:

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

  21. MasterMind הגיב:

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

    נראה לי בגלל שהוא POPUP אז הוא לא עושה את הוראות ה ASP
    יכול להיות ?
    תודה רבה  נועם צברי  
    (תודה רבה לבילד שעזר לי)

  22. MasterMind הגיב:

    אוי איך אני בודק בכלל
    אם הוא מספרי או אותיות
    כי ניסיתי אבל לא פעל  הנה הקוד


    if cint(request.querystring("ID")) then
    User_ID=cint(request.querystring("ID"))
    call Num(User_ID)
    elseif Cstr(request.querystring("ID"))
    User_Name=Cstr(request.querystring("ID"))
    call Name(User_Name)
    End IF

    או איך אני בודק אם קראתי לו ב ID או ב UID  ? (בשורת הכתובת)

  23. Hagai2005 הגיב:

    יכול להיות..
    למה דווקא פופ-אפ?
    תנסה בדף רגיל לעשות את מה שאמרתי לך…

    ותראה אם הבעיה היא באמת בפופ-אפ, או בסיישנים…
    בהצלחה,
    ושבת שלום,
    חגי.

  24. MasterMind הגיב:

    כבר אמרתי את זה…
    בהודעות הראשונות (כנראה שלא ראית)
    שכאשר אני פותח את הדף רגיל הוא מוחק אותם יפה מאוד
    אבל בפופ אפ זה לא מוחק…..

  25. MasterMind הגיב:

    גילוי משמעותי……
    זה פועל יפה מאוד במוזילה פיירפוקס
    אבל זה לא מרענן את הדף שיצר את הפופ אפ

שלח תשובה