CS6320:  SW Engineering of Web Based Systems

 

PHP Example --publish photo to user's

Scenario 1: Uploading a photo to the app’s album

This is the scenario where you upload a photo to the USER_ID/photos Graph API endpoint.

The user interface for this example allows the user to select a photo and add a caption before submitting the new photo.

The newly created photo ID is returned to the user.

Using PHP:

<?php         

$app_id = "YOUR_APP_ID";         
$app_secret = "YOUR_APP_SECRET";         
$post_login_url = "YOUR_POST_LOGIN_URL";               
$code = $_REQUEST["code"];           

//Obtain the access_token with publish_stream permission          
if(empty($code)){          
   $dialog_url= "http://www.facebook.com/dialog/oauth?"             
                 . "client_id=" .  $app_id              
                 . "&redirect_uri=" . urlencode( $post_login_url)             
                 .  "&scope=publish_stream";            
    echo("<script>top.location.href='".$dialog_url. "'</script>");          
 }         
else {            
   $token_url="https://graph.facebook.com/oauth/access_token?"  
              . "client_id=" . $app_id   		   
              . "&redirect_uri=" . urlencode( $post_login_url)             
              . "&client_secret=" . $app_secret            
              . "&code=" . $code;            

   $response = file_get_contents($token_url);            
   $params = null;            
   parse_str($response, $params);            
   $access_token = $params['access_token'];             

   // Show photo upload form to user and post to the Graph URL           
   $graph_url= "https://graph.facebook.com/me/photos?"        
                . "access_token=" .$access_token;            

   echo '<html><body>';           
   echo '<form enctype="multipart/form-data" action="'.$graph_url .' "method="POST">';           
   echo 'Please choose a photo: ';           
   echo '<input name="source" type="file"><br/><br/>';           
   echo 'Say something about this photo: ';           
   echo '<input name="message" type="text" value=""><br/><br/>';           
   echo '<input type="submit" value="Upload"/><br/>';           
   echo '</form>';           
   echo '</body></html>';        
}  ?>

Example Response

{     "id": "1001207389476"  }  
© Lynne Grewe