2567
รับทำเว็บไซต์อสังหาริมทรัพย์  รับทำเว็บฟุตบอล  รับทำเว็บพระเครื่อง รับทำเว็บขายรถมือสอง
หมวดสินค้า
สคริปเว็บประมูล+ลงประกาศฟรี
สคริปเว็บเต็นท์รถมือสอง
สคริปเว็บหางาน
สคริปเว็บบอร์ด
สคริปเว็บขายบ้าน ที่ดิน อสังหาริมทรัพย์
สคริปเว็บฟุตบอล
สคริปเว็บวาไรตี้
สคริปเว็บไซต์วัด
สคริปเว็บไซต์รีสอร์ท ห้องพัก ที่พัก ร้านอาหาร
สคริปเว็บ ขยายสายงาน MLM
สคริปร้านค้าออนไลน์
สคริปเว็บพระเครื่อง
สคริปเว็บหาเพื่อน Social Network
สคริปเว็บ ขายสินค้า+โปรเจ๊ค
สคริปเว็บลงประกาศฟรี
สคริป Hosting
สคริปเว็บ เว็บไซต์โรงเรียน
สคริปเว็บ อบต. เทศบาล โรงพยาบาล
รับทำระบบวิทยุออนไลน์
รับทำเว็บไซต์ ด้วยระบบ JOOMLA
ขายสคริปทำจาก SMF
สคริป เว็บดูหนังออนไลน์
สคริป เกมส์ออนไลน์
สคริปเว็บ จองห้องพัก จองโรงแรม
ขายสคริปทำจาก Discuz!
สคริปเว็บ ติวเตอร์
สคริปเว็บเพื่อการศึกษา
สคริปห้างสรรพสินค้า
สคริปเว็บเครื่องเสียง
สคิปเว็บ อัพวีดีโอ
ขายสคริปเว็บสำเร็จรูป
สคริปเว็บหน่วยงาน เว็บบริษัท
สคริปเว็บ 25satang
สคริปเว็บท่องเที่ยว เว็บทัวร์
สคริปเว็บไซต์ หน่วยงานอื่นๆ
สคริปเว็บร้านเสริมสวย
สคริปเว็บดูดวง
รับทำเว็บไซต์สปา
รับทำเว็บไซต์บริษัท ราคาถูก
รับทำเว็บทนายความ
รับเขียนโปรแกรมแบบฟอร์มรับข้อมูล
ตะกร้าสินค้า
จำนวนสินค้า ชิ้น
รวมเงิน บาท
ดูสินค้าในตะกร้า
ค้นหาสินค้า
ชื่อสินค้า
 
ตรวจสอบสินค้า
เลขที่ใบสั่งซื้อ
 
เว็บบอร์ด รับทำเว็บไซต์อสังหาริมทรัพย์ รับทำเว็บฟุตบอล รับทำเว็บพระเครื่อง รับทำเว็บขายรถมือสอง

ทำเว็บไซต์ Login Facebook ด้วย PHP SDK

  « เมื่อ 15-10-2014 เวลา 18:37:15 โดย เจ้าของร้าน อ่าน 4910 »

ปัจจุบันการใช้งานเว็บไซต์ของคนในยุคสมัยนี้เปลี่ยนไป
การสมัครสมาชิกสำหรับเว็บไซต์ต่างๆ ที่เป็นแบบฟอร์ม Register มักไม่ค่อยมีให้เห็นแล้ว

เพราะคนส่วนใหญ่มี Facebook Account เป็นของตัวเอง
แค่เพียงคลิกครั้งเดียวก็สามารถเป็นสมาชิกของเว็บไซต์นั้นๆ ได้แล้ว

วันนี้ผมจะมาสอนวิธีการทำ "Login With Facebook" ในแบบฉบับของ Code-self ครับ

  1. ต้องสมัคร Application ของ Facebook ก่อน เพื่อเปิดทางให้สามารถใช้ API ต่างๆของ Facebook 
    โดยเข้าไปที่ https://www.facebook.com/developers 



    เลือก "Create New App"


    กรอก App Name และ NamesSpace
    (ตามที่คุณต้องการ จากภาพเป็นแค่ตัวอย่าง)



    กรอกลิ้งเว็บไซด์ของคุณ
    (Facebook จะใช้ URL นี้ในการตรวจสอบว่าเราใช้ App นี้กับเว็บไซต์เราจริงหรือไม่)



     
  2. ดาวน์โหลด PHP SDK จาก https://developers.facebook.com/docs/reference/php


  3. ทำการเตรียมไฟล์ (โดยในที่นี้เป็นการวางไฟล์ในแบบของผมนะ)


    โดย
    index.php     เป็นไฟล์ที่จะมีกดปุ่ม "Login With Facebook"
    auth_fb.php  เป็นไฟล์ที่จะรับค่าหลังจาก auth ที่ฝั่ง Facebook แล้ว
  4. มาดูกันในส่วนของไฟล์ index.php
     
    <?
     session_start();
     // Facebook API
     require("class/facebook.php");  
     define("FB_APP_ID" , "362137xxxxxxxx");  // App ID ที่ได้จากการสร้าง App
     define("FB_APP_SECRET" , "c5191exxxxxxxxxxxxxxxxxxxxxxx"); // App Secret ที่ได้จากการสร้าง App
     $FB = new Facebook(array(
               'appId'  => FB_APP_ID,
               'secret' => '9839c7a3304c352a511f2faa5059ce1b',
             ));
     $param['redirect_uri'] = "http://xxxxx.com/auth_fb.php"; // เมื่อ Login ผ่าน Facebook สำเร็จให้วิ่งกลับไป Link ดังกล่าว
     $param['scope'] = "email , publish_stream"; // คือ Permission ที่เราต้องการ เช่น publish_stream = อนุญาติให้โพสผ่านหน้า wall ได้
     $param['popup'] = 1; // เพื่อให้ App ใน Facebook ขึ้นว่า Login With Facebook
      
     $FB_ME_INFO = NULL;
     $FB_LOGIN_URL = "";
     $FB_LOGOUT_URL = "";
     
     if (empty($_SESSION['LOGIN_FB_ID'])) {   // Session นี้เราจะ Set ในไฟล์ auth_fb.php เมื่อทำการ Login สำเร็จ
      $FB_LOGIN_URL = $FB->getLoginUrl( $param );
     } else {
      $FB_LOGOUT_URL = $FB->getLogoutUrl();
     }
     
     define("FB_LOGIN_URL" , $FB_LOGIN_URL);
     define("FB_LOGOUT_URL" , $FB_LOGOUT_URL);
     
     if (empty($_SESSION['LOGIN_FB_ID'])) {
      echo '<a href="'.FB_LOGIN_URL.'">Login With Facebook</a>';
     } else {
      echo "Hello , ".$_SESSION['LOGIN_FB_FULLNAME'];
      echo '<a href="'.FB_LOGIN_URL.'">Login</a>';
     }
    ?>
    
    
    
    
    
    
  5. ต่อมาในส่วนของไฟล์ auth_fb.php เป็นส่วนของการ redirect หลังจากการที่ Login Facebook สำเร็จแล้ว ในตัวอย่างนี้จะทำการ Set Session แล้วก็กลับไปแสดงผลที่ index.php
     
    <?
     session_start();
     
     require("class/facebook.php");  
     define("FB_APP_ID" , "362137xxxxxxxx");  // App ID ที่ได้จากการสร้าง App
     define("FB_APP_SECRET" , "c5191exxxxxxxxxxxxxxxxxxxxxxx"); // App Secret ที่ได้จากการสร้าง App
     $FB = new Facebook(array(
               'appId'  => FB_APP_ID,
               'secret' => '9839c7a3304c352a511f2faa5059ce1b',
             ));
     $user = NULL;
     $user = $FB->getUser();  // Get User
     
     if ($user) { // ตรวจสอบว่าสามารถ Login แล้ว Get ข้อมูลได้หรือไม่
     
      try { 
      
       $FB_ME_INFO = $FB->api('/me'); // เป็นการเรียก Method /me ซึ่งเป็นข้อมูลเกี่ยวกับผู้ใช้ท่านนั้นๆ ที่ได้ทำการ Login
       
       $_SESSION['LOGIN_FB_ID'] = $FB_ME_INFO["id"];
       $_SESSION['LOGIN_FB_FULLNAME'] = $FB_ME_INFO["name"];
       header("Location:./index.php"); 
       
      } catch(FacebookApiException $e) { 
       echo $e;  // print Error
       //header("Location:./index.php?Login=fail"); 
      }
      
     } else {
      header("Location:./index.php?Login=fail");
     }
    
    ?>

  6.  
เพียงเท่านี้ก็สามารถทำ Login ผ่าน Facebook ได้แล้วครับ


ทั้งนี้จากตัวอย่างเป็นการเขียนโค้ดเพื่อให้เห็นภาพแบบง่ายๆ
อันที่จริง ควรทำเป็นไฟล์ Include ในส่วนของ Object Facebook ไว้จะดีกว่าครับ
เพราะบางทีเรามีการเปลี่ยน App ID ก็จะได้ไปแก้ไขที่ไฟล์ Include แค่ไฟล์เดียวครับ
รับทำเว็บไซต์อสังหาริมทรัพย์ รับทำเว็บฟุตบอล รับทำเว็บพระเครื่อง รับทำเว็บขายรถมือสอง
หน้าแรก รายการสคริปต์ สินค้าในตะกร้า การสั่งซื้อและขนส่ง แจ้งการชำระเงิน เว็บบอร์ด ติดต่อเรา เว็บเพื่อนบ้าน
Copy Right © รับทำเว็บไซต์อสังหาริมทรัพย์ รับทำเว็บฟุตบอล รับทำเว็บพระเครื่อง รับทำเว็บขายรถมือสอง
Design By WebKrooX.com webkroox.com เว็บครูเอ็กซ์ ดอตคอม
ที่อยู่ จังหวัดขอนแก่น รหัสไปรษณีย์ 40000 เบอร์โทรศัพท์ 097-3049990(เบอร์ line) และ 080-7567590 Fax meewebsite
Email : webkroox@gmail.com