Çağan Bahri

Yazılım Geliştirici

Php ile Facebook üyelik işlemleri

Bu yazım da Facebook api sistemi ile yapılan giriş entegrasyonunu yazmak istiyorum son süreçlerde baya bir değişiklik yaptılar.
Token alıp ilgili bağlantıları çekmeyi göstereceğim.
Github da ki ilgili dosyaları vs konunun en an altında sizlere iletmiş olurum arkadaşlar.


1. Aşama Developer Console üzerinden app oluşturma

 -  https://developers.facebook.com/apps/  adresine gidiyoruz.

- Create App tıklıyoruz(Uygulama oluştur)

https://caganbahri.com/upload/2.png

- Bilgilerimizi girelim

https://caganbahri.com/upload/3.png
- Facebook login(Set up) kısmını tıklıyoruz.

 

- Daha sonrasın da "Web" Butonunu tıklıyoruz.


-Site url kısmına site adresimizi yazıyoruz Not : Site adresinizi https ile yazmamlısınız diğer türlü kabul olmuyor yada callback yapılan dosyada sıkıntı çıkartıyor.(Post verileri tam sağlanmıyor) daha sonrasında ilgili sdk ve dökümanlar hakkında bilgi veriyor siz bu kısmı ilerleye bakarak not alın ve işlemi bitirin.


- Sonrasıda sol menü üzerinde şu şekilde bir menü çıkacak = Facebook Login => Settings Tıklayın 

- En önemli kısım bu kısım sırasıyla anlatayım 


  A:  Valid OAuth Redirect URIs  : Uygulamanızın giriş yaptıktan sonra yönlendirileceği adres (Verilerin geleceği ve denetleneceği yer)

 B : Deauthorize Callback URL  : Diyelim ki facebook üzerinden kullanıcı uygulamadan izni kaldırdı size bu bilgiyi gönderen bir data verisi gönderiyor: (Üye silmede yada veri silmede işe yarar)

C:Redirect URI to Check : Uygulamanın başarıyla giriş yaptıktan sonra yönlendirileceği adres ve bu alanda denetleniyor 
Not : İlk başta valid oauth Redirect Uris adresine yönlenecek adresi yazmalısınız sonrasında bu alana yapıştırın aynı linki.

 

 

 

- Daha sonrasında sol menüden Settings  => Basic gidelim. ve bilgileri  girelim.Burada web siteminizin giriş işlemlerinde kullanılacak iki önemli bilgi vardır App Id ve App Secret kısmı bunları facebook github da yayınladığı sdk üzerinde kullanacağız.

-Save Changes deyip çıkalım şimdi php kodları kısmına geldik 

 

2. Aşama Entegrasyon 

Php kodlarını paylaşıyorum bu alanı kendi app bilgilerinize göre düzenlemeniz gereklidir.

kayit.php 

<?php

require 'Facebook/autoload.php';

if (!session_id())
{
    session_start();
}


$facebook = new \Facebook\Facebook([ '11111111111',          //  App id kısmını buraya yerleştiriyoruz
  'app_secret' => '11111111111',    // app secret kısmını da bu kısma
 
  'default_graph_version'  => 'v2.10'  // app versiyon kısmını bu da buraya
]);

$facebook_output = '';
$facebook_helper = $facebook->getRedirectLoginHelper(); // facebook helperi dahil ediyoruz bu class sayesinde facebook data verilerine erişeceğiz
$facebook_permissions = ['email']; // email izni istiyoruz
$facebook_login_url = $facebook_helper->getLoginUrl($yonlendirilecekurl, $facebook_permissions); // permision ayarlarını ve yönlendirilecek adresi tanımlıyoruz
$facebook_login_url = $facebook_login_url; // linkimiz oluştu bu değişkeni herhangi bir yere href kısmına yerleştiriyoruz buraya kadar herşeyi yaptık.

?>

Sıra callback.php 

facebookcallback.php

<?php

require 'Facebook/autoload.php';

if (!session_id())
{
    session_start();
}


$facebook = new \Facebook\Facebook([ '11111111111',          //  App id kısmını buraya yerleştiriyoruz
  'app_secret' => '11111111111',    // app secret kısmını da bu kısma
 
  'default_graph_version'  => 'v2.10'  // app versiyon kısmını bu da buraya
]);


if (!session_id())
{
    session_start();
}
$facebook_output = '';

$facebook_helper = $facebook->getRedirectLoginHelper();

if(isset($_GET['code'])){

 if(isset($_SESSION['access_token']))
 {
  $access_token = $_SESSION['access_token'];
 }
 else
 {
  $access_token = $facebook_helper->getAccessToken();

  $_SESSION['access_token'] = $access_token;

  $facebook->setDefaultAccessToken($_SESSION['access_token']);
 }


 $graph_response = $facebook->get("/me?fields=name,email", $access_token); 

 $facebook_user_info = $graph_response->getGraphUser();

// Bu aşamadan sonra üyelik işlemleri sorgu ile denetletebilir veritabanına ekletebilirsiniz.
$_SESSION["fbid"] = $facebook_user_info["id"]; // facebook id çekiyoruz 
print_r($facebook_user_info);  // çıktıları burada görebilirsiniz 





 
}





?>


Buraya kadar verileri sessiona aktardıysak facebook apiyi entegre etmişizdir.
Tabi ki bu süreçte sıkıntılar yaşayabilirsiniz çünkü versiyonlar arasında çok fazla uyumsuzluk söz konusu.
Facebook sdk resmi site üzerinden ulaşabilirsiniz.
https://developers.facebook.com/docs/apis-and-sdks/
Devamında php google ile üyelik işlemlerini de göstermeye çalışacağım.

 

Bir Yorum Bırakabilirsiniz :)