У меня есть несколько curl-кодов, и они успешно загружают любой файл на любой мой хост.
Но я хочу загрузить видео на Facebook без какой-либо формы.Это не работает на Facebook.
Вот коды:
<?php
$app_id = "23***************";
$app_secret = "******************";
$my_url = "http://localhost/fbupload/";
$video_title = "Test";
$video_desc = "Test";
$code = $_REQUEST["code"];
if(empty($code)) {
$dialog_url = "http://www.facebook.com/dialog/oauth?client_id="
. $app_id . "&redirect_uri=" . urlencode($my_url)
. "&scope=publish_stream";
echo("<script>top.location.href='" . $dialog_url . "'</script>");
}
$token_url = "https://graph.facebook.com/oauth/access_token?client_id="
. $app_id . "&redirect_uri=" . urlencode($my_url)
. "&client_secret=" . $app_secret
. "&code=" . $code;
$access_token = file_get_contents($token_url);
$post_url = "https://graph-video.facebook.com/me/videos?"
. "title=" . $video_title. "&description=" . $video_desc
. "&". $access_token;
//CURL CODES START
$ch = curl_init();
$data = array('name' => 'file', 'file' => '@/1.mp4');
curl_setopt($ch, CURLOPT_URL, $post_url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_exec($ch);
//CURL ENDS
?>
, если я изменяю curl, чтобы сформировать это работает.
echo '<form enctype="multipart/form-data" action="'.$post_url.'
"method="POST">';
echo 'Please choose a file:';
echo '<input name="file" type="file">';
echo '<input type="submit" value="Upload" />';
echo '</form>';
Что вы предлагаете?где моя вина?