hocam uygulama konusunda bende çok takıldım bi türlü beceremedim. kendim uyugulamamı kullanabiliyorum fakat başkaları uygulamamı göremiyor bile. eğer sorunu çözmüş iseniz banada yardım eder misiniz?
Benim sorunum izinleri istemekler alakalıydı eğer sen kendi uygulamanı kullanırken izin sayfası çıkartabiliyorsan o sorunu aşmıssın demektir. Tahmin ettiğim kadarıyla başkalarını senin uygulamanı görememesi facebook'un güvenli gezinme özelliğiyle alakalı olabilir.
Uygulamayı yüklediğin sitenin SSL özelliği yoksa diğer kullanıcılar güvenli gezinme açık olduğu için hata sayfasıyla karşılacakatır. Hostundan SSL özelliği satın alırsan artık siten https://www.sitedi.com şeklinde çalışacağı için sorun olmayacktır. Eğer izinler konusun da takıldıysan da tamamını kod yazarak yaptım.
require 'src/facebook.php';//facebook apisini dahil ettim
$config=array(
'appId' => '135311503290870',
'secret'=>'f7c7a7603d0e9e6c121774da7fd07a34'
);//$config dizisi oluşturarak uygulamamın güvenlik anahtarını ve appId numarasını giriyorum
$my_url="http://apps.facebook.com/uygulamadim"; Uygulamamın çalışacağı facebook linki
$facebook=new Facebook($config);// $facebook değişkenine daha önce yukarda facebook apisini dahil ettiğim için, "new Facebook" diyerek facebook sınıfını atadım.
$user_id=$facebook->getUser(); Burada kullanıcının giriş yapıp yapmadığını kontrol ettim.
?>
Aşağıdaki kodlarlada istediğim izinleri aldım. Sadece izinleri istediğin kısmı değiştirmen yeterli. Tabi ki üstteki kodu da aynı olması şartıyla. Tabi kendine göre app id, secret filan değiştireceksin.
#----facebook izinlerini istiyoruz----
$code = $_REQUEST["code"];
if(empty($code)) {
$_SESSION['state'] = md5(uniqid(rand(), TRUE)); // CSRF protection
$dialog_url = "https://www.facebook.com/dialog/oauth?client_id="
. $config['appId'] . "&redirect_uri=" . urlencode($my_url) . "&state="
. $_SESSION['state']."&scope=user_about_me,user_birthday,user_relationships,friends_birthday,friends_relationships";//izinleri burda sıralıyorum
echo("<script> top.location.href='" . $dialog_url . "'</script>");
}
Şimdilik yardımcı olabileceğim bu kadar. Bir sorun olursa tekrar paslaşabiliriz :D