Facebook Uygulaması Yazmak – 2

Evren Bayraktar Tarih: 22 Eylül, 2009 Saat: 2:38 Programlama (33) Yorum

facebookBir önceki yazımda facebook uygulaması yazma konusuna girmiştim. Eğer bu yazıdaki terimler size yabancı geliyorsa önce şurayı okuyun. XHTML, PHP, FTP, HOSTING, FBML hakkında hiç bir bilginiz yoksa google amcaya sorun..

Yok yok FBML yi dert etmeyin :) Giricez şimdi o konuya :P Esas şimdi başlıyoruz uygulama geliştirmeye, yazamaya.. Öhöm öhöm..

Facebook Uygulaması Yazmak

Uygulama sayfamızı oluşturmayı bir önceki yazımda anlatmıştım. Gelelim kod yazmaya..

İşimize yarayacak en büyük şey Facebook İstemci Kütüphanesi. Bu kütüphane sayesinde php ile facebook a uygulama geliştirebileceğiz. PHP ile facebook'un kendi yaratmış olduğu dili FBML'yi kullanabileceğiz. Yeri gelmişken kısaca FBML den bahsedeyim.

FBML Nedir ?

Arkadaşlar FBML (Facebook Markup Language) facebook un kendi geliştirdiği bir dil yapısıdır. Facebook un özel görünümlerini fbml sayesinde çok basit bir şekilde elde edebilirsiniz. Yada ne bileleyim, arkadaşlarınızı listeletebilirsiniz. Görerek öğrenmek en mantıklısı heralde;

<fb:name uid="12345" /> uid ile belirttiğiniz id li kişinin adını yazdırabilirsiniz mesela. Yada daha anlamlı olsun. Facebook'un meşhur pencerelerinden açalım.

2009-09-22_130328

Benim dialogu görmek istiyomusun canım yazısındaki dialog linkine tıklayınca resimde gördüğünüz dialogbox diye tabir edilen pencere açılıyor. Bunu sağlamak için gerekli kodumuz,

<?php

/**
* @author EvrenWeb
* @copyright 2009
*/

require_once 'facebook.php';

$appapikey = 'API KEY;
$appsecret = 'GIZLI API KEY';
$facebook = new Facebook($appapikey, $appsecret);
$user_id = $facebook->require_login();

?>
<fb:dialog id="my_dialog" cancel_button=1>  <fb:dialog-title>Face Dalog</fb:dialog-title> <fb:dialog-content><form id="my_form">EvrenWeb in dialog'unu beğendin mi??</form></fb:dialog-content>  <fb:dialog-button type="button" value="Kesinlikle Evo" href="http://some_url.com/awesome.php" /> <fb:dialog-button type="button" value="Hayır Evocum" href="http://some_url.com/lame.php" /> </fb:dialog> Benim <a href="#" clicktoshowdialog="my_dialog">dialogu</a> görmek istiyomusun canım

Anlayacağınız <fb:bilmem ne> mevzularının hepsi FBML ye giriyor. Wiki sayfasında hepsi mevcut, ben şimdi fazla uzaymayacağım.

Facebook Platform

İstemci kütüphanesini indirmenizi söylemiştim. İndirip içini açtıktan sonra iki adet klasör göreceksiniz. Birisi footprints öbürü ise php. Size tavsiyem, uygulama dosyalarınızın hepsini bu php klasöründe depoyın.

2009-09-22_132708

php klasörünün içerisinde de bunlar mevcut. bunların içerisindeki facebook.php bizim herşeyimiz. Yazdığımız kodların içerisine onu çağırarak API,FBML, FQL yi kullanacağız. Örneğin

<?php

require_once 'facebook.php';

$appapikey = 'API KEY';
$appsecret = 'GIZLI KEY';
$facebook = new Facebook($appapikey, $appsecret);

?>

Bu kod dizimi ile facebook sınıfımızı kullanmaya başladık. Bundan sonra hayal gücümüze kalıyor. Zaten uygulama yazaksanız php ile bildiğiniz şeyi yapıcaksınız, öğrenmeniz gereken uygulamanın facebook ayağı. En çok merak edilenler, olması gerekenler hakkında örnekler ile sizlere yardımcı olmaya çalışacağım. Uygulama sayfanıza gelen kişinin15 arkadaşını listeletelim mesela:

<?php

/**
* @author EvrenWeb
* @copyright 2009
*/

require_once 'facebook.php';

$appapikey = 'API KEY';
$appsecret = 'GIZLI KEY';
$facebook = new Facebook($appapikey, $appsecret);
$user_id = $facebook->require_login();

echo "<p>Merhaba, <fb:name uid=\"$user_id\" useyou=\"false\" />!</p>";

echo "<p>Arkadaşların:";
$friends = $facebook->api_client->friends_get();
$friends = array_slice($friends, 0, 15);
foreach ($friends as $friend) {
echo "<br><fb:profile-pic uid='$friend'><fb:name uid=\"$friend\" useyou=\"false\" /></fb:profile-pic>";
}
echo "</p>";

?>

Bu dosyayı ark.php olarak kayıt edelim. FTP aracılığı ile hostumuza (ben http://face.evrenweb.net/ şeklinde yapmıştım) atalım. Sonra da http://apps.facebook.com/seninadresin/ark.php açalım. Göreceğiz ki 15 adet arkadaşımızı listeliyoruz.

Davet Gönderme

Facebook Invite

Davet formu oluşturmak yapacağımız uygulamanın olmazsa olmazlarından olsa gerek. Resimde görmüşsünüzdür nasıl bişey olduğunu. Bu işi yapabilmek için kullanacağımız örnek kodlar,

<?php

/**
* @author EvrenWeb
* @copyright 2009
*/

require_once 'facebook.php';

$appapikey = 'API KEY';
$appsecret = 'GIZLI KEY';
$facebook = new Facebook($appapikey, $appsecret);
$user = $facebook->require_login();

$invfbml = <<<FBML
Ben
<fb:name uid="$user" firstnameonly="true" shownetwork="false"/>. Buda benim davetim.
<fb:pronoun possessive="true" uid="$user"/> invited you. English olsun..
<fb:req-choice url="http://apps.facebook.com/evrenilk/" label="Ekleyin!" />
FBML;
?>
<fb:request-form type="evrenilk" action="http://www.facebook.com/profile.php" content="<?=htmlentities($invfbml)?>" invite="true">
<fb:multi-friend-selector max=20 actiontext="evrenilk davetiyesi" showborder="true" rows=5 exclude_ids="<?=$arFriends?>">
</fb:request-form>

Bu kodda benim başka bir eklentim görünüyor. Eklentinin adı evrenilk idi. Sizin kendi eklenti adınıza göre değişirmeniz gerekmekte.

Facebook Tab kullanımı:

2009-09-22_142530

Belkide Facebook ile ünlenen tab yapımına bakalım. FBML ile bu çok basit aslında :)

<fb:tabs>
<fb:tab-item href="http://apps.facebook.com/evrenilk/index.php" title="Ana Sayfa"/>
<fb:tab-item href="http://apps.facebook.com/evrenilk/davet.php" title="Davet"/>
</fb:tabs>

Bu kodları tab.php olarak kayıt edin. İş bu kadar basit :)

Aslında facebook da uygulama geliştirmek çok zor bişey değil. Yani işin facebook ayağı zor değil. Siz beyin gücünüzü kullarak bişeyler ortaya çıkarıcaksınız, artık ne tarz programlama bilgisi gerektiriyorsa (misal php) o dil deki becerinizi ortaya koyacaksınız. Facebook ayağı sizi zaten fazla zorlamaz.

Ben bu örnekleri vermeye devam edersem Facebook Platform dökümanına ayıp etmiş olurum. Orada bütün fonksiyonları, API, FBML, XFBML, FQL, FBJS hakkında açıklamaları, kod örneklerini adamlar vermiş. Göz gezdirmeden yola çıkmak yanlış olur.

Dilerim ki yararlı bir kaynak olmuştur, emeğe saygı duyulup kaynaksız paylaşım yapılmaz..

Benzer Yazılar

  1. Facebook Uygulaması Yazmak – 1
  2. Facebook Arkadaşına Önerme Kodu
  3. Facebook’da Static FBML Kullanma
  4. Facebook Sayfanıza Paylaş Butonu Ekleyin
  5. Facebook’da Müzik Çalar Yapmak
Etiket : , , , ,
Bu yazıya yapılan yorumları RSS ile takip edebilirsin. Sitende paylaşmak için de geri izleme geri izleme bağlantısını kullanabilirsin.

Yorumlar
12 Ekim 2009

mrb. bu hosting işini nasıl yapacağız..sitem yok benim.

Yorum by fatih
12 Ekim 2009

Merhabalar,

Hosting satan firmalar var. Biraz araştırma yaparak işinize ve bütçenize uygun bir paket bulup onları alabilirsiniz. Bana biraz geniş alan vs. diyorsanız, DreamHost ve Hostgator a göz gezdirebilirsiniz. Dilerseniz dreamhost için indirim kuponu ayarlayabilirim. Bedava hosting sağlayan yerler de mevcut. Bir ara Lycos bu işi güzelce yapıyordu. Hala devam ediyormu bilmiyorum.

Yorum by Evren Bayraktar
25 Ekim 2009

merhaba, verdiğiniz bilgiler için teşekkürlerfaydalı bir yazı.
Şunu sormak istiyorum facebookta uygulama geliştirmek için hangi dili, dilleri bilmek gerekir? İllaki php mi? yoksa asp veya diğerleri ile de olur mu?
teşekkürler

Yorum by ali
25 Ekim 2009

Hocam ben bir kaç gündür Hayranlık sayfasına; FBML(static code) den bir davet aracı ekleme istiyorum… Hayranık sayfasının duvarına DAVET KUTUSU ekliyosun ve üye girdiği zaman direk arkadaşlarını “input cehcbox” yane isimlerin yanında küçük kutucuğu işaretliyosun ve sayfanın adı yazılı olduğu davet butonuna tıklıyosun hızlı bir şekilde davet gidiyor../bu hayranlık sayfasını arkadaşlarına Öner” linkine tıklayıp tektek seçmek yerine direk üyenin karşısına hızlı bir şekilde davet kutusu eklemek daha mantıklı ve verimli olabileceğini düşünüyorum.
Bana bu konuda yardımcı olursanız çok sevinirim. Örnek Hayranık Sayfası” http://www.facebook.com/galatasaraysporkulubu?ref=sgm

Yorum by Miqo
26 Ekim 2009

ben sizden bir konuda yardım isticektim ben face buka girdiğim zaman ana sayfayı görüntüleyemiyorum profilimi görüntülemenin bir yolunu buldum ama paylaşımlarımı göremiyorum ve bana
adı:tab.php
tür:php_auto_file
şeklinde bir dosya indirme seceneği geliyor onu indiriyorum yinede işe yaramıyor acaba bana yardımınız dokunurmu

Yorum by mehmet
29 Ekim 2009

Arkadaşlar kusura bakmayın bu sıralar çok yoğunum. Blog’a uğrayamıyorum bile.. En kısa zamanda telafi etmeye çalışacağım.

@Miqo,
bahsettiğin gibi birşeye facebook’un izin vericeğini sanmıyorum açıkcası. Facebook’da sen benzer uygulamalar gördün mü ?

@Mehmet,
O olay bende de oluyor bazen, heralde tarayıcı ve bizim bilgisayarlarımız ile ilgili bir problem. Kullandığın tarayıcının son sürümünü kullan, internet hızınıda yavaşlatıcak şeyleri kapat öyle dene bakalım. Kesin bir bilgiye sahip değilim, ama çözüm olarak bunlar bende işe yarıyor :)

Yorum by Evren Bayraktar
09 Aralık 2009

Merhaba, Evren Bey Öncelikle Böyle Bir Döküman Hazırladığınız için Teşekkürler. Kısa ve Öz Şekilde Feys Uygulama Sistemini Görmüş Olduk. Ben Hayran Sayfalarında Bulunan Profil Kutusu Uygulaması Yapmak İstiyorum. Açıkcası İnternetde İşe Yarar Bir Örnek Bulamadım. Örneğin Fenerbahçe, Galatasaray, Türk Bayrağı vb. Gibi Kutuları Profil Sayfanızın Sol Kısmına Ekliyebiliyorsunuz. Bu konuda elinizde bir örnek veya döküman varmı. Ben Feysbook da olabileceğini düşündüm ancak ingilizce 0 olduğundan fazla birşey bulamadım.

Şimdiden Teşekkürler…

Yorum by Sinan
17 Aralık 2009

merhabalar bu yazmış oldugunuz kodları ne olarak
yani hangi php dosyasına kayıt edecegiz..

Yorum by Özgür
17 Aralık 2009

yada hocam ftp ye atmış oldugunuz dosyanın tümünü paylaşa bilirmisiniz ben deiklerinizi yaptım fakat uygulama çalışmadı

Yorum by Özgür
17 Aralık 2009

Yazıda açıklamıştım zaten ?

Mesela, ark.php, tab.php olarak kaydedin diye. Yazının dizisini tamamen okuyun sorununuz olmayacaktır diye umut ediyorum.

Yorum by Evren Bayraktar
18 Aralık 2009

ark.php davet.php ve tab.php olarak verdiginiz kodları kaydedip ftp içindeki facebook klasörü php
dosyası içine attım fakat böyle bir sorun çıkıyor.
FBML Error (line 5): illegal tag “body” under “fb:canvas”

Yorum by Özgür
18 Aralık 2009

Birde yukarda vermiş oldugunuz bu kodu facebook.php içinemi ataçagız.

Yorum by Özgür
18 Aralık 2009

Facebook Platform altında vermiş oldugunuz ilk kodu facebook.php içinemi ataçagız.

Yorum by Özgür
18 Aralık 2009

Facebook Platform altındaki kısa kod facebook.php deki class yapısını nasıl kullanmamız gerektiğini anlatıyor.

Ark.php diye kayıt edin dediğim koda bakarsan zaten içerisinde kullanmışım class yapısını.

facebook.php bizim FaceBook Platform daki sınıf yapısı. Biz kendi yazıcağımız dosyalara bunu include edip class yapısını kullanmaya başlıyoruz. facebook.php nin orjinali ile oynama yok yani. Wiki sayfasına göz atarsan örnekler mevcut, bende onlardan yola çıkarak hazırlamıştım.

http://www.evrence.com/programlama/facebook-uygulamasi-yazmak-1.html

burada anlattıklarımı doğru yaptığına da emin ol. Yanlış yaparsan bunlarda sıkıntı yaratır.

Yorum by Evren Bayraktar
18 Aralık 2009

çok teşekkür ederim acamilik başa bele :) emin olun anlattıklarınızı bir bir yaptım.ama hata veriyor
son olarak şunu ögrenmek istiyorum ftp içindeki facebook klasöründe bulunan php dosyasının içine sadece ark.php ,davet.php ve tab.php mi attınız yoksa index.php de varmı varsa index.php içine hangi kodu yazmamız gerekiyor tekrar teşekkür ederim

Yorum by Özgür
19 Aralık 2009

Ben index.php de attım ama onla bir işiniz yok zaten sizin. Eğer index.php atmazsanız

http://apps.facebook.com/sizinuygulamanız/

adresi sayfa bulunamıyor diyecektir fakat,
http://apps.facebook.com/sizinuygulamanız/ark.php dediğinizde çalışacaktır..

index.php de diğerleri gibi bir dosya özelliği yok yani. Siz kendi programınıza göre özellik kazandıracaksınız, size kalmış

Yorum by Evren Bayraktar
22 Ocak 2010

Çok Güzel Anlatmışsınız Çoooook Teşekkür ederim :)

Yorum by Atakan
22 Ocak 2010

Rica ederim Atakan ;) Sizlerden böyle yorumlar almak beni gerçekten çok sevindiriyor. Böyle olduğu sürece sıkılmadan merak edilenleri aktarmaya devam :) :)

Yorum by Evren Bayraktar
12 Temmuz 2010

Evren bey ben flash mp3 player gibi bir uygulama oluşturdum uygulamam çalışıyor fakat kendi profilimde sayfaya ekleyemiyorum bunu nasıl yaparım bunun için bir kod varsa bunuda mı index.php dosyasına yazmak gerekiyor bu konuda bilgi alabilirmiyim…?

Yorum by Ömer Güray
21 Temmuz 2010

Kusura bakmayın, tatildeyim yorumlarınıza zamanında cevap veremiyorum.

Son gelişmelerden haberdar değilim, bilgilerim gerçek manada güncelliğini yitirmiş durumda. Ama Sanki uygulmayı oluşturuken profil kutularını desteklemesi için bir tık atıyorduk.

Yorum by Evren Bayraktar
27 Temmuz 2010

Syn Evren Bey benim  sorunum  FBML mp3 url player ve koda url ekledim ve çalışıyor sayfamda sorunsuz ama bu playera daha fazla şarkı eklemem gerekiyor kod bu burdkai şarkı sayısını arttırmam için ne yapmalıyım yardım ederseniz sevenirim teşekkürler
<fb:mp3 src=”http://www.fenerbahce.org/multimedia/marslar/marslar2_1907_marsi_remix.mp3″ title=”1907 Marsı” artist=”Fenerbahçe Eien” album=”Fenerbahçe Eien”>

Yorum by Hasan
27 Temmuz 2010

Facebook, liste oluşturmaya izin verip vermediği konusunda bir bilgim yok henüz. Dilerseniz kendi mp3 player’ınızı http://developers.facebook.com/docs/reference/fbml/swf buradan yardım alarak, ekleyebilirsiniz.

Yorum by Evren Bayraktar
27 Temmuz 2010

Syn Evren Bey ben sayfama mp3 player oluşturdum ve çalışıyor yanlız sorunum tek şarkı çalıyor ve tekrar calması için play tusuna basmamız lazım ben bunu  daha fazla şarkı ve o listenin otomatik çalmasını istiyorum kod bu yardım ederseniz sevnirim teşekkürler
 

<fb:mp3 src=”MP3 URL ADRESİ” title=”ŞARKI İSMİ” artist=”ŞARKICI İSMİ” album=”ALBÜM İSMİ”>
 
 
 

Yorum by Hasan
27 Temmuz 2010

Syn Evren bey bu sayfada dedim mp3 player mevcut bu şekilde olmaıs imkansızmı
http://www.facebook.com/Fenerbahce?ref=ts#!/Fenerbahce?ref=ts

Yorum by Hasan
27 Temmuz 2010

Eğer siz o playerdan yapnmak istiyorsanız

http://www.evrence.com/programlama/facebookda-muzik-calar-yapmak.html

bu yazımı okuyabilirsiniz.

Fakat kendi yazdığınız fbml kodları ile bir player oluşturmak istiyorsanız o iş başka. Facebook sadece yukarıda verdiğim linkteki gibi kullanım imkanı sağlıyor o player listesini. Eğer müzik eklemek isterseniz de tek tek sizin verdiğiniz koddaki gibi eklenebiliyor. Benim bildiğime göre dışarıdan öyle bir liste oluşturmak şuan mümkün değil. Fakat kendi müzik playerınızı ekleyebilirsiniz dilediğiniz gibi

Yorum by Evren Bayraktar
27 Temmuz 2010

anladım çok teşekkür ederim eğer beni ekelrseniz  yardıma ihtiyac duydumda size ulaşmak isterim facebook profilimin linki buyrun
link silindi

Yorum by Hasan
30 Temmuz 2010

Hasan bey, ilginiz için teşekkürler. Bu güne kadar kimse buradan profil linki paylaşmadı, bu günden sonra da paylaşılsın istemiyorum. Sorunlarınız oldukça buradan yardımcı olmaya çalışırım. Yerim belli, bir yere gittiğim yok ;)

Yorum by Evren Bayraktar
30 Temmuz 2010

<fb:mp3 src=”MP3 URL ADRESİ” title=”ŞARKI İSMİ” artist=”ŞARKICI İSMİ” album=”ALBÜM İSMİ”>
<fb:mp3 src=”MP3 URL ADRESİ” title=”ŞARKI İSMİ” artist=”ŞARKICI İSMİ” album=”ALBÜM İSMİ”>
<fb:mp3 src=”MP3 URL ADRESİ” title=”ŞARKI İSMİ” artist=”ŞARKICI İSMİ” album=”ALBÜM İSMİ”>
<fb:mp3 src=”MP3 URL ADRESİ” title=”ŞARKI İSMİ” artist=”ŞARKICI İSMİ” album=”ALBÜM İSMİ”>
<fb:mp3 src=”MP3 URL ADRESİ” title=”ŞARKI İSMİ” artist=”ŞARKICI İSMİ” album=”ALBÜM İSMİ”>

Bu şekilde yapmayı denedinizmi acaba olması lazım gibime geliyor…
Bende bu aşağıda olan mp3 playeri yaptım çalışmasına çalışıyorda profilde sol köşeye bir yere yerleştirme
 işlemini yapamadım.

Yorum by Ömer Güray
30 Temmuz 2010

Öyle olmaz, olurda, playlist olmaz. Örnek olması açısından facebook üzerindeki evrence sayfasının kutular kısmına ekledim.

Yorum by Evren Bayraktar
30 Temmuz 2010

<fb:swf height=”360″ width=”270″ swfbgcolor=”000000″ imgstyle=”border-width:0px; border-color:white;”
swfsrc=’http://rules.bravehost.com/mp3 swf/lcd05.swf’
flashvars=”playList=http://rules.bravehost.com/mp3%20swf/mp3player.xml&amp;ShowPlaylist=1&amp;ShowEQ=1&amp;firstTrack=1&amp;initVol=100″ wmode=”opaque”>
/>

Ben bunu hazırladım kendi playerim için.

Yorum by Ömer Güray
30 Temmuz 2010

Evet o da farklı bir player eklemek için kullanılacak güzel bir yöntem.

http://www.evrence.com/programlama/fbml/facebooka-farkli-muzik-calar-ekleme.html

Bende yukarıdaki bağlantıda anlatmıştım facebook’a farklı bir player eklemeyi.

Yorum by Evren Bayraktar
23 Ağustos 2010

Benim sormak istediğim birisi uygulamam girdiğinde onun ve arkadaşlarında işte “engin ezelioyun da okey oynamaya başladı” şeklinde bunu nasıl yapabiliriz? 

Yorum by Engin
31 Ağustos 2010

merhabalar,
kaptan bu senin sayfanda da olan listeli mp3 player kod nedir. Bir türlü bulamadım listeli olanını. yardımcı olursan sevinirim.

Yorum by ramazan akkoyun
Yorum yapın

(gerekli)

(gerekli) ( Kimse Bilmeyecek! )

Yazı yazarken güvenlik kodu girmek istemiyorsan üye olabilirsin.





EvrenCe Facebook'da.