הבעיה היא שהפונקציה:
קוד:
$this->facebook->getUser();
שאמורה להחזיר אם היוזר מחובר או לא, תמיד מחזירה 0 (גם כאשר מחובר)
זו בעיה שהרבה נתקלו בה (גוגל) אבל אף אחד מהפתרונות אינו ברור , אשמח לעזרה ממישהו שמכיר את הנושא
לפי מה שכן הבנתי מהפתרונות בגוגל שזה בעיה של דומיינים שונים וSCOPE שונה של סשן. אבל זה מידע שלא תורם לי בפתרון.
להלן מידע נחוץ:
הגדרות בפייסבוק: site Url:
http://localhost:80/appName
הערה: הקוד נכתב בסביבת codeIgniter
וזהו הקוד:
קוד:
$facebookConfig =array(
'appId' => '************',
'secret' => '*********************************',
'cookie' => true
);
$this->load->library('facebook',$facebookConfig);
$user = $this->facebook->getUser();
$loginUrl = $this->facebook->getLoginUrl( //קישור לחיבור + ההרשאות המבוקשות
array(
'scope' => 'email,publish_stream,user_birthday,user_location,user_work_history,user_about_me,user_hometown'
)
);
if ($user) { //בדיקה אם המשתמש קיים
$user_profile = $this->facebook->api('/me');
debug($user_profile);
}
else if (!$user) {
echo "<script type='text/javascript'>top.location.href = '$loginUrl';</script>";
exit;
}