Intereting Posts

Проблема PHP SCRIPT с передачей загруженного изображения в функцию facebook-> api

У меня есть этот код и его работа очень хорошо, если я предоставляю прямую ссылку на изображение.


Просто и только одна проблема, я не могу передать загруженное изображение в facebook-> api (независимо от того, является ли оно действительным или нет), и следующее всегда echo


echo 'Поддерживаются только типы изображений jpg, png и gif!';


я даже удаляю проверку типа изображения и пытаюсь получить изображение из $ img = realpath ($ _ FILES ["pic"] ["tmp_name"]); но $ img ничего не получает и загружает по умолчанию пустое изображение на facebook в качестве моей страницы. Не забудьте проверить мой следующий код и сообщить мне, что не так с моим кодом, и что я должен делать, чтобы загружать изображения

Онлайн-ссылка следующего КОДА: http://radiations3.com/facebook/1.php

<? require 'src/facebook.php'; $app_id = "364900470214655"; $app_secret = "xxxxxxxx"; $facebook = new Facebook(array( 'appId' => $app_id, 'secret' => $app_secret, 'cookie' => true, 'fileUpload' => true, )); $user = $facebook->getUser(); //echo $user; if(($facebook->getUser())==0) { header("Location:{$facebook->getLoginUrl(array('req_perms' => 'user_status,publish_stream,user_photos,offline_access,manage_pages'))}"); exit; } else { $accounts_list = $facebook->api('/me/accounts'); echo "i am connected"; } $valid_files = array('image/jpeg', 'image/png', 'image/gif'); //to get the page access token to post as a page foreach($accounts_list['data'] as $account){ if($account['id'] == 194458563914948){ // my page id =123456789 $access_token = $account['access_token']; echo "<p>Page Access Token: $access_token</p>"; } } //posting to the page wall if (isset($_FILES) && !empty($_FILES)) { if( !in_array($_FILES['pic']['type'], $valid_files ) ) { echo 'Only jpg, png and gif image types are supported!'; } else{ #Upload photo here $img = realpath($_FILES["pic"]["tmp_name"]); $attachment = array('message' => 'this is my message', 'access_token' => $access_token, 'name' => 'This is my demo Facebook application!', 'caption' => "Caption of the Post", 'link' => 'example.org', 'description' => 'this is a description', 'picture' => '@' . $img, 'actions' => array(array('name' => 'Get Search', 'link' => 'http://www.google.com')) ); $status = $facebook->api('/194458563914948/feed', 'POST', $attachment); // my page id =123456789 var_dump($status); } } ?> <body> <!-- Form for uploading the photo --> <div class="main"> <p>Select a photo to upload on Facebook Fan Page</p> <form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>" enctype="multipart/form-data"> <p>Select the image: <input type="file" name="pic" /></p> <p><input class="post_but" type="submit" value="Upload to my album" /></p> </form> </div> </body> 

После загрузки я получил следующий обратный вызов

i am connectedarray (1) {["id"] => string (31) "194458563914948_415487041812098"}

graph api explorer предлагает загрузку успешно

https://developers.facebook.com/tools/explorer?method=GET&path=194458563914948_415487041812098