היי לינק, בדקתי את ההצעה שלך זה באמת לא הספיק,
קיבלתי את השגיאה הבאה (אחרי כמובן שסגרתי את הדפדפן והפעלתי מחדש במטרה לראות שזה יעבוד כביכול על הקוקי)
Fatal error: Uncaught OAuthException: An active access token must be used to query information about the current user. thrown in /home//domains//public_html/includes/base_facebook.php on line 970
ונראה לי כיון שזה שסתם יצרת עוגיה ששומרת את ה TOKEN זה לא מספיק...
אצלי למשל שורות אחרי העוגיה אומרות כזה דבר:
קוד:
if (isset($_COOKIE['facebook'])) { //בדיקה אם המשתמש קיים
$user_profile = $facebook->api('/me');
$fname = $user_profile['first_name'];
$lname = $user_profile['last_name'];
$email = $user_profile['email'];
ומה שקורא אם באותו SESSION לא התחברת מבחינת פייסבוק אין חיבור ולכן אני גם לא יכול לקבל את השם פרטי וכו' זה שהכנו עוגיה עם TOKEN לא משנה דבר כי הקוד מחפש SESSION עם TOKEN כנראה.
מוזר איך זה עובד אצלך?
ושמתי לב למשהו נוסף ...אני גם ממשתי כפתור התנתקות אחרי הבדיקה אם המשתמש מחובר אני מכין את הכפתור באמצעות הקוד הזה (ואח"כ מציג אותו כקישור למשתמש.)
קוד:
$logoutUrl = $facebook->getLogoutUrl();
לאחר לחיצה עליו הוא מתנתק מפייסבוק -
והוא אכן עושה את זה , ואז הוא מחזיר לדף הראשי ושוב אני מקבל
Fatal error: Uncaught OAuthException: Error validating access token: The session is invalid because the user logged out. thrown in /home//domains//public_html/includes/base_facebook.php on line 970
גם כאן כי הדפדפן לא מצא את הSESSION כנראה. (האתר עדין לא התעדכן או משהו...) ברענון של אותו דף עם השגיאה האתר כבר עולה רגיל ואני אכן כבר לא מחובר.... אבל איך אפשר להתגבר על כך שבפעם הראשונה שאני לוחץ על ההתנתקות זה לא ירשום את השגיאה.