รับทําเว็บไซต์ รับทําseo
บทความที่น่าสนใจ

บทความ ที่น่าสนใจ

การอัพโหลด รูป และสร้าง album ขึ้น facebook ด้วย php sdk

     
    ตัวอย่าง การใช้ graph api ของ facebook ผ่าน php sdk สำหรับใช้ในการสร้าง albums รูปภาพ
    และ อัพโหลดรูปภาพ ไปยังหน้า โพรไฟล์ user ในส่วนของ photo บน facebook 
     

     

    ตัวอย่าง การใช้ graph api ของ facebook ผ่าน php sdk สำหรับใช้ในการสร้าง albums รูปภาพและ อัพโหลดรูปภาพ ไปยังหน้า โพรไฟล์ user ในส่วนของ photo บน facebook
     
    <?php  
    session_start(); // กำหนดไว้ กรณีอาจได้ใช้ตัวแปร session  
    include("facebook.php"); //  เรียกใช้งานไฟล์ php-sdk สำหรับ facebook  
      
    // สร้าง Application instance.  
    $facebook = new facebook(array(  
      'appId'  => 'xxxxxxxxxxxxxx', // appid ที่ได้จาก facebook  
      'secret' => 'xxxxxxxxxxxxxxxxxxx', // app secret ที่ได้จาก facebook  
      'fileUpload' => true, // เปิดใช้ในส่วนของการอัพโหลดรูปได้  
      'cookie' => true, // อนุญาตใช้งาน cookie  
    ));  

     

    // ตรวจสอบสถานะการ login  
    $session = $facebook->getSession();  
     
      
    // สร้างฟังก์ชันไว้สำหรัดทดสอบ การแสดงผลการใช้งาน  
    function pre($varUse){  
        echo "<pre>";  
        print_r($varUse);  
        echo "</pre>";  
    }  
    // สร้างตัวแปรสำหรับเก็บข้อมูลของสมาชิกเมื่อได้ทำการ login แล้ว  
    $me = null;   
     
      
    // ถ้ามีการ login ดึงข้อมูลสมาชิกที่ login มาเก็บที่ตัวแปร $me เป็น array  
    if($session){  
        try{  
            $uid = $facebook->getUser(); // เก็บ id ของผู้ใช้ไว้ที่ตัวแปร $uid กรณีมีการล็อกอิน facebook อยู่  
            $me = $facebook->api('/me'); // ดึงข้อมูลผู้ใช้ปัจจุบันทีล็อกอิน facebook มาเก็บในตัวแปร $me  
        }catch (FacebookApiException $e) { // กรณีเกิดข้อผิดพลากแสดงผลลัพธ์ข้อผิดพลาดที่เกิดขึ้น  
            error_log($e);  
        }  
    }  
    ?>  
     
    <?php  
    ////////////////////////////////////////////////////////////////////////////////  
    ///       ส่วนของการใช้งาน  
    ///////////////////////////////////////////////////////////////////////////////////  
    if(isset($_GET['logout'])){ // ทำการ logout อย่างสมบูรณ์  
        $facebook->setSession(null);     // ล่างค่า session ของ facebook  
        header("Location:".$_SERVER['PHP_SELF']); //ลิ้งค์ไปหน้าที่ต้องการเมื่อ logout เรียบร้อยแล้ว  
    }  
    if($me){ // กรณีเงื่อน login อยู่  
    // เก็บค่า url ไว้ในตัวแปร $logoutUrl สำหรับ logout กรณีที่ได้ทำการ login อยู่  
    //  $logoutUrl = $facebook->getLogoutUrl(); // การกำหนดแบบปกติ  
    // การกำหนดแบบปกติ ค่า session ของ facebook ยังคงอยู่ แนะนำเป็นวิธีด้านล่าง  
      
    //   next คือ url ที่ต้องการลิ้งค์ไป เมื่อ logout แล้ว ในที่นี้กำหนด เป็น url ปัจจุบัน   
    //   แต่เพิ่มตัวแปร get ชื่อ logout เพื่อกลับมาเข้าเงื่อนไข ทำลาย session ของ facebook  
        $logoutUrl = $facebook->getLogoutUrl(  
            array(  
                'next'=>'http://www.softmelt.com/fb/facebook_use_sdk6.php?logout'  
            )  
        );   
        
    }else{  // กรณีเงื่อนไข logout  
    // เก็บค่า url ไว้ในตัวแปร $loginUrl สำหรับ login กรณีที่ยังไม่ได้ login  
    //  $loginUrl = $facebook->getLoginUrl();  // กำหนด url กรณีใช้งานปกติ  
     
       
    //  กำหนด url สำหรับ login กรณีเพิ่มเติมพิเศษ  
    //  next: คือ url ที่้ต้องการใช้ลิ้งค์ไป เมื่อ login สำเร็จ  
    //  cancel_url: คือ url ที่้ต้องการใช้ลิ้งค์ไป เมื่อ ผู้ใช้ยกเลิกการ login  
    //  req_perms: กำหนด การร้องขอส่วนของ permission เพิ่มเติมที่ต้องการให้ผู้ใช้อนุญาต  
    //  ดูได้จาก http://developers.facebook.com/docs/authentication/permissions  
    //  display:  รูปแบบหน้า login ที่ต้องการแสดง ปกติค่าจะเป็น page ถ้าไม่ได้กำหนด   
    //  จะเป็นหน้า เพจ login ของ facebook ปกติ  
    //  การกำหนดแบบ popup จะมีปุ่ม cancel ให้เลือก และใช้กับ cancel_url แนะนำให้ใช้เป็น popup  
       $loginUrl = $facebook->getLoginUrl(  
            array(  
                'next'=>'http://www.softmelt.com/fb/facebook_use_sdk6.php',  
                'cancel_url'=>'http://www.softmelt.com/fb/facebook_use_sdk6.php',  
                'req_perms'=>'publish_stream,offline_access,user_photos', // คั่นแต่ละค่าด้วย ,(comma)  
                'display'=>'popup'    // page หรือ popup       
            )  
       );  
    }  
    ?>  
     
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"  
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
    <html xmlns="http://www.w3.org/1999/xhtml"  
     xmlns:fb="http://www.facebook.com/2008/fbml">  
    <head>  
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  
    <title>facebook use php sdk upload photo album</title>  
    <style type="text/css">  
    body{  
        font-family:tahoma, "Microsoft Sans Serif", Verdana;  
        font-size:12px;   
    }  
    </style>  
    </head>  
      
    <body>  
      
      
    <a href="<?=$_SERVER['PHP_SELF']?>">Reload</a>  
    <br />  
    <?php if($me){ ?>  
    <a href="<?=$logoutUrl?>">Facebook Logout</a>  
    <?php }else{ ?>  
    <a href="<?=$loginUrl?>">กรุณาล็อกอินเพื่อดูตัวอย่างผลลัพธ์ Facebook Login</a>  
    <?php } ?>  
      
      
      
    <?php  
    // ส่วนของการสร้าง albums ใหม่  
    if($_POST['Submit2']){   
        $args_album=array( // ค่าที่ส่งไปด้วย  
            "name"=>$_POST['albumName'], // ชื่อ album ที่ต้องการกำหนด  
            "message"=>$_POST['message'] // คำอธิบายเกี่ยวกับ album  
        );    
        try{  
            if($_POST['albumName']!=""){ // ตรวจสอบถ้ามีการกำหนดชื่อมา  
                $facebook->api("/me/albums","post", $args_album);    //  สร้าง album ใหม่  
            }  
        }catch (FacebookApiException $o) {  
        //    pre($o);  
            error_log($o);  
        }     
    }  
     
    // ส่วนของการ อัพโหลดรูปภาพ  
    if($_POST['Submit']){  
        if($_FILES['image']['name']!=""){ // เมื่อมีการเลือกรูปภาพเพื่ออัพโหลด  
            $args = array(  
                'message' =>$_POST['caption'], // คำอธิบายรูปภาพ  
                'source'=>'@'.realpath($_FILES['image']['tmp_name']) // ไฟล์รูปภาพ  
            );   
        }  
        try{  
            if($_FILES['image']['name']!=""){// // เมื่อมีการเลือกรูปภาพเพื่ออัพโหลด  
                // ให้ทำการอัพโหลดรูปภาพไปยัง album ที่่เลือก  
                $facebook->api("/".$_POST['albumID']."/photos","post", $args);  
            }  
        }catch (FacebookApiException $o) {  
        //    pre($o);  
            error_log($o);  
        }  
    }  
    ?>  
      
     
    <form action="" method="post" enctype="multipart/form-data" name="form1" id="form1">  
    <?php  
    // ดึงข้อมูล id และ ชื่อ album ของเรามาเก็บไว้สร้างตัวเลือกใน select box  
    $testData=$facebook->api("/me/albums?fields=id,name");  
    //pre($testData);  
    ?>  
      
    <table width="500" border="0" cellspacing="2" cellpadding="0">  
      <tr>  
        <td width="144" align="right">&nbsp;</td>  
        <td width="356" align="left">&nbsp;</td>  
      </tr>  
      <tr>  
        <td align="right">สร้างชื่อ alum ใหม่</td>  
        <td align="left"><input name="albumName" type="text" id="albumName" size="40" /></td>  
      </tr>  
      <tr>  
        <td align="right">คำอธิบาย album</td>  
        <td align="left"><textarea name="message" id="message" cols="30" rows="3"></textarea></td>  
      </tr>  
      <tr>  
        <td align="right">&nbsp;</td>  
        <td align="left"><input type="submit" name="Submit2" id="Submit2" value="Submit" /></td>  
      </tr>  
      <tr>  
        <td colspan="2" align="center"><hr /></td>  
        </tr>  
      <tr>  
        <td align="right">เลือก album ที่ต้องการอัพโหลดรูป</td>  
        <td align="left">  
    <select name="albumID" id="albumID">  
    <?php   
    if(count($testData['data'])>0){//  ตรวจสอบว่า มี album อยู่หรือไม่   
        foreach($testData['data'] as $key=>$value){ // วนลูปแสดง   
    ?>  
    <option value="<?=$testData['data'][$key]['id']?>"><?=$testData['data'][$key]['name']?></option>  
    <?php  
        }  
    }  
    ?>  
    </select>      
        </td>  
      </tr>  
      <tr>  
        <td align="right">เลือกไฟล์รูปภาพ</td>  
        <td align="left"><input type="file" name="image" id="image" /></td>  
      </tr>  
      <tr>  
        <td align="right">คำอธิบายรูปภาพ</td>  
        <td align="left"><textarea name="caption" id="caption" cols="30" rows="3"></textarea></td>  
      </tr>  
      <tr>  
        <td align="right">&nbsp;</td>  
        <td align="left"><input type="submit" name="Submit" id="Submit" value="Submit" /></td>  
      </tr>  
    </table>  
    </form>  
    </body>  
    </html>  

     

บทความที่น่าสนใจ

บทความ ล่าสุด

บทความ ความรู้ด้านไอที, คอมพิวเตอร์ Techonlogy, Gadget, ความรู้เกี่ยวกับคอมพิวเตอร์ กับทาง SoftMelt.com