Facebook API กับ PHP กับการ Auto Post ที่ Wall ของเรา


หน้าแรก facebook app Facebook API กับ PHP กับการ Auto Post ที่ Wall ของเรา
มาเขียนโปรแกรมภาษา PHP ร่วมกับ Facebook API สำหรับการทำ Auto Post ข้อความสำหรับ Share Link ที่คุณต้องการให้มาปรากฏที่หน้า Wall Profile ของคุณ หรือเพื่อนของคุณเวลาที่พวกเขาเข้าไปที่ Link ดังกล่าวแล้วกด Share น่าจะได้ประโยชน์กับแคมเปญพวก Microsite หรือแคมเปญสำหรับ PR สินค้าหรือบริการที่ต้องการการบอกต่อ มาดูกันครับว่าการทำนั้นไม่ยากเลย บทความนี้เหมาะสำหรับผู้เริ่มต้นเขียน API Facebook นะครับ


หน้า Wall ก็ธรรมดาๆ แต่ของผมเปลี่ยนเป็น Timeline แล้ว

ขั้นแรกเลยให้ไปดาวน์โหลด Facebook API Library สำหรับ PHP ที่ URL นี้ครับ https://github.com/facebook/php-sdk/ อันที่จริงก็คือ Library ตัวเดียวกับที่เขียนลงบนบทความ เรียกจำนวนสมาชิกใน Facebook Fan Page ออกมาเป็น Interger ด้วย PHP เลยครับ


ดาวน์โหลดชุด Library ดึงไฟล์ Facebook API ทั้งหมดลงมา

สร้างไฟล์ fb.php ขึ้นมาแล้วนำไปวางไว้ Folder เดียวกับ PHP Library ตัวนี้ครับ ตามภาพก็ได้


วางไฟล์แบบนี้นะจ๊ะ

ไปที่หน้า https://developers.facebook.com/apps/ เพื่อไปทำการ Register Apps ขึ้นมาครับในตัวอย่างผมตั้งชื่อ App ว่า Banyapon ชื่อ NameSpace นี้ทำมาเล่นๆ เลยใส่ชื่อผมไปเองซะเลยครับเมื่อเสร็จแล้วกด Save เราจะได้ค่า App ID และ App Secret มาทำการ Copy ไว้เช่นกันครับ


ไปสร้าง หรือ Register App ของคุณบน Facebook ครับ



เราจะใช้ APP ID และ APP Secret เช่นเดิมนะครับ

สิ่งที่เราจะต้องใช้นั้นมีอยู่ 2 อย่างคือ App ID และ App Secret ครับอย่าให้คนอื่นได้รู็เลยเชียวนา..


สร้างขึ้นมาก็จะหาได้จากตรงนี้ครับ

ไปที่ไฟล์ fb.php ให้ใส่ Code ตามข้างล่างเลยครับ

[Code]

<?php

require_once('src/facebook.php');

 

$config = array(

'appId' => 'App ID ของคุณ',

'secret' => 'App Secret ของคุณ',

);

 

$facebook = new Facebook($config);

$user_id = $facebook->getUser();

?>

<html>

<head></head>

<body>

<?php

if($user_id) {

try {

$ret_obj = $facebook->api('/me/feed', 'POST',

array(

'link' => 'http://www.daydev.com/',

'message' => '@daydev บัญญพนต์ พูลสวัสดิ์ เจ้าของเว็บไซต์ www.daydev.com เว็บไซต์รวบรวม บทความออนไลน์ สำหรับนักพัฒนาด้าน Development, Integration และ Augmented Reality แห่งแรกของประเทศไทย ',

  'photo' => 'http://www.daydev.com/images/stories/news/style-daydev.jpg'

));

echo '<pre>Post ID: ' . $ret_obj['id'] . '</pre>';

} catch(FacebookApiException $e) {

$login_url = $facebook->getLoginUrl( array(

'scope' => 'publish_stream'

));

echo 'Please <a href="' . $login_url . '">login.</a>';

error_log($e->getType());

error_log($e->getMessage());

}

echo '<br /><a href="' . $facebook->getLogoutUrl() . '">logout</a>';

} else {

$login_url = $facebook->getLoginUrl( array( 'scope' => 'publish_stream' ) );

echo 'Please <a href="' . $login_url . '">login.</a>';

}

?>

</body>

</html>

[Code]

หรือถ้าขี้เกียจแกะหรือ Copy ก็ให้ไปดาวน์โหลดได้ที่นี่ครับ http://www.daydev.com/fancount/fb.zip

เอาล่ะ มาทดสอบกันหน่อยดีกว่าว่ามันจะ Work ไหม!

ก่อนอื่นเลยก็ผม Upload ไฟล์ fb.php ไว้ที่ Folder ชื่อ fancount ผมก็ต้องเข้าไปที่ URL http://www.daydev.com/fancount/fb.php นี้ครับ เพื่อทำการ Authen เข้าสู่ระบบของ Facebook ซึ่งหน้าจอจะไม่มีอะไรเลยนอกจาก Link ให้เราทำการ Login เข้าระบบ


เข้า Login กันหน่อยซิ

ระบบจะมีการตรวจของ Access เข้าไป Profile ของเราครับ


กด Allow ไปเลย

เมือ่เราทำการ Allow ไปแล้วมันจะมีการเข้า Session เล็กน้อย จนกระทั่งเราพบกันหน้าจอแบบด้านล่างนี้


แปลว่าทำได้ทำการ Post ขึ้น Wall ของเราแล้ว

ไหนๆ ก็ลองไปดูที่หน้า Wall ของเราซะหน่อย


มันเหมาะกับการทำ Viral Marketing มากๆ

เห็นไหมครับมันไม่ยากเลยซักนิด Source Code ทั้งหมดไม่ได้หวงนะครับ เพื่อนๆ โปรแกรมเมอร์มือใหม่ก็ลองฝึกวิทยายุทธกันได้กับชุดพัฒนานี้ครับ แต่อย่าไปเขียนอะไรให้มัน Annoy คนอื่นๆ นะครับคราวหน้าพบกันใหม่ครับ สวัสดี :)

refer: http://www.daydev.com/programming-language/php/620-facebook-api-php-auto-post-wall.html


ขึ้นไปด้านบน