![]() |
# 1 |
חבר מתקדם
|
[PHP] עוגיות לא נשמרות ב FF?
אני עובד עם עוגיות,
ואני שם לב שב IE הן נשמרות ללא בעיה, אך ב FF - הן לא. הנה הקוד: קוד:
if($_COOKIE["yourid"] != $the_id) setcookie("yourid", $the_id, time()+100*60*60*24*364); else echo 'Cookie Exists'; דרך FF - לא נשמר. למישהו יש מושג מה הבעיה? |
![]() |
![]() |
# 2 |
אין כמו ב127.0.0.1
|
בלי קשר.. תעשה קודם בדיקה עם isset ואחר כך תבדוק מה התוכן?
וזה כנראה קשור להגדרות של הדפדפן, אולי הגדרת אותו לא לקבל עוגיות. מה שעוד חשבתי עליו, זה שאולי time()+100*60*60*24*364 גדול מ-PHP_MAX_INT ואז נוצרת בעיה. למה לא לעשות פשוט 60 * 60 * 24 * 365 * 3? |
![]() |
![]() |
# 3 |
חבר מתקדם
|
הבנתי, תודה!
|
![]() |
![]() |
# 4 |
חבר וותיק
|
טוב בגלל שאני לא משוכנע אם פותח האשכול הצליח לפתור את הבעיה שלו או לא, אני אגיב בכל מקרה.
יש תוסף לFireFox שנקרא Cookie editor. אני ממליץ לך להוריד את התוסף ולראות מה קורה לעוגיות שלך ולמה הן לא מופיעות. הניחוש שלי שלא הגדרת נתיב נכון לעוגיות שזה דבר שכידוע IE מתעלם ממנו וFF לא. |
![]() |
![]() |
# 5 | |
אין כמו ב127.0.0.1
|
ציטוט:
המספר שהוא השתמש בו מקביל למספר השניות בין 1.1.1970 לעכשיו (time()), והוא הוסיף לו עוד 100 שנה (time()+100*60*60*24*364). המגבלה של PHP היא כמובן בשימוש ב-32 ביט, זה משהו כמו עד שנת 2032 נדמה לי, אולי אחרי זה. בגלל שהוא הגדיר לעוד 100 שנה - הרבה מעבר ל2032 - אז נוצרת הבעיה זאת. מסקנה שתוכלו להסיק מזה, היא שעד שנת 2032 (משהו כזה, שוב, אני לא בטוח) נצטרך לעבור ל-64 ביט או למצוא פתרונות אחרים, כי חייבים לעבוד עם TIME בPHP ![]() |
|
![]() |
![]() |
חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים) | |
|
|