בעיה... סשנס.

yuval k

New member
בעיה... סשנס.

הצלחתי לסדר את הבעע הזה, ועכשיו הוא מחזיר אותי לדף הלוגאין אחרי X זמן מהפעולה האחרונה. אבל... הלוג-אין רושם כמה משתני $_SESSION [כמובן, אחרי session_start()]. הבעיה היא, הוא רושם אותם רק על המחשב שלי, ולא כאשר אני מבקש מאנשים ממחשבים מרוחקים להתחבר. זו בעיה, אפילו שהאפליקציה אמורה לרוץ רק על מחשב אחד... מן הסתם, רוצים לעבוד נכון. הוא פשוט לא רושם אותם - וזה בדוק...
אני על לינוקס. ראיתי את זה בתור bug שנגרם כתוצאה מ-IIS, אבל זה על חלונות, ואני על לינוקס עם אפאצ'י... יש הצעות? אם יש כאן מישהו שמוכן לעזור אינטראקטיבית - מסור לי מסר... תודה לכולם
 

ik5

New member
אני לא מבין את הבעייה

תכול לחזור עליה בצורה ברורה יותר ?
 

yuval k

New member
בהחלט.

אני רושם סשן, עם $_SESSION (אני מגדיר אותו), אבל אצל אנשים שיש להם אינטרנט אקספלודר הסשן אינו נשמר. זה הכל
ככה קטן, ככה מעצבן...
 

ik5

New member
הוא לא נשמר כשהם עוברים דף ?

או מה הכוונה בדיוק ?
 

yuval k

New member
precisely.

אבל לא נורא, עכשיו אני אעבוד קצת על זה דרך חלונות, ואז נראה במה אני נתקל ואיך פותרים (בינתיים הוא לא אוהב להסתדר עם המשיכת נתונים מהמסד MySQL שלי... מחר.)
 

shanor

New member
מממ...

יובל בוקר טוב. קראתי פעמיים את ההודעות כאן וגם אני מתקשה להבין את הבעיה. SESSION לא אמור להרשם אצל כל אחד מהמשתמשים שלך אלא רק על המחשב המריץ את ה- PHP (= השרת עצמו בדרך כלל). הדרך להעביר את המידע מדף אחד לדף הבא, הוא בשתי דרכים הראשונה באמצעות עוגיות והשניה באמצעות משתנה דרך ה- URL. היות וברירת המחדל היא דרך עוגיות, תוודא שבמחשבים האחרים שעובדים על המערכת שלך עוגיות הם דבר שמתאפשר מבחינת הגדרות הדפדפן. מעבר לזה, ברגע שעשית START ל-SESSSION, בתחילת הסקריפט שלך, אין כאן משהו שיכול לא לעבוד. בברכת הצלחה שנאור.
 

kensaggy

New member
מממ...

שאתה אומר שרשמת את הסשן בעזרת $_SESSION..ז"א ככה: (?)
$_SESSION['mysession'] = "my value";​
נסה קודם ל"רשום" את הסשן בעזרת הפונ' הבנויה לכך:
$mysession = "my value"; session_register("mysession");​
למרות שאני לא מאמין שזאת הבעיה...תמיד יכול להיות
בהצלחה, חן.
 

yuval k

New member
מממ...

ההגדרה האוט' היא שמשתנים כאלה לא יהיו גלובאליים... נכון? וכן - אני מגדיר כמו שאמרת
הבעיה היא, והיא לא רק שלי, שהאינטרנט אקספלורר איכשהו גורם לסשן להתאבד... http://216.239.39.100/search?q=cache:qv-oEv8WZ5kJ:www.php.net/session_start+session+internet+explorer+site:www.php.net+&hl=en&ie=UTF-8 תסתכלו שם. אני עובד עם ה-ISAPI, אבל זה גם קורה כשניגשים לשרת אפאצ'י שלי שרץ על לינוקס. וכן, העוגיות כן מאופשרות ע"י הדפדפן, ולא, זה לא עובד, גם כשאני עושה לו accept all cookies.
 

shanor

New member
מממ...

ראשית בוא נתחיל מזה שלדעתי משתני ה- SESSION כן צריכים להיות גלובליים בדיוק כמו משתני ה- POST וה- GET וכו'. שנית, בקשר לסשנים המתאבדים - כפי שהגדרת את זה - כאן יש יותר תחושת בטן אבל, תבדוק האם זה הדבר היחידי שלא עובד... אם יש עוד דברים שלא עובדים, אולי יש צורך לקנפג או אפילו להתקין מחדש את ה- PHP... אם זה הדבר היחיד שלא עובד, תבדוק האם הסשן בכלל נוצר והאם הוא מכיל את המשתנים שהכנסת לתוכו. פשוט תיצור סשן ע"י SESSION_START כרגיל, תכניס לתוכו משתנה כל שהוא ותבדוק האם הוא נוצר על השרת שלך (המחשב שמריץ את ה- PHP). לדעתי, ההגדרה ב- PHP.INI שלך, שמצביע על התיקיה שבה יאוכסנו השסנים היא שגויה / לא קיימת / התקייה לא קיימת וכו'. פשוט תבדוק איפה זה יוצר את השסנים ותראה מה קורה שם בדיוק. מקווה שזה עוזר. בברכת הצלחה, שנאור.
 

yuval k

New member
מממ...

לא, אני התכוונתי לסשנים שנוצרים על-ידי session_register - זו ההגדרה הדיפולטית ב-php.ini. והסשנים _כן_ עובדים על דפדפנים שאינם IE.
 

shanor

New member
מממ...

פתרון, אין לי, אלא רק שאלה, משהו על עדכון של IE גרסה 6.0 (תחת השם:Q313675 ) נשמע מוכר??? בכל מקום שחיפשתי, עדכון של הדבר הזה למיקרוספט אקספולרר SP2, גורם לבעיה הזו של שסנים שלא יפעלו... תנסה לראות האם עדכנת מתישהו את ה- IE שלך בעידכון הזה (אפשר למצא אותו באתר של מיקרוסופט ולבדוק בדיוק מה העיניין שם)... אם אכן יש דבר כזה, תראה האם אפשר אולי להסיר את העדכון הזה, אולי זו הבעיה. עוד דבר שאולי שווה וכדאי לנסות, קח את הקבצים שלך, ותבדוק שהשם שלהם מורכב מאותיות ומספרים בלבד... בלי UNDERSCORE "_" בלי סימנים כל שהם פרט לאותיות (באנגלית טהורה) ומספרים. תנסה רק להריץ את זה ולבדוק האם זה עובד.... זהו לעכשיו, בהצלחה שנאור.
 
למעלה