API вконтакте - постинг на стену в группу не работает. публикация фото
Цитата: steel от 13.10.2015, 15:53Данный скрипт делает только пост вконтакте, а фотографию к посту не загружает.
Вот код: помогите пожалуйста разобраться
<?php
error_reporting(E_ERROR);
error_reporting(E_ALL);$groups = array (
'group_1' => array(
'group_id&
#39; => 'ID группы',
'dir'&
nbsp; => &nb
sp; 'some_dir'
),
);$app ['app_id'] = 'ID приложения';
$app ['app_key'] = 'серетный ключ';
$app ['group_owner'] = 'ID владельца группы';
$app ['group_id'] = 'ID группы';$app ['app_token'] = 'токен';
$base_dir = dirname(__FILE__).'';
include ("vk.php");
include ("vkexception.php");foreach ($groups as $group){
sleep(1);
$app ['group_id'] = $group ['group_id'];
$cur_dir = $base_dir .''. $group ['dir'] .'/';$all_files = scandir($cur_dir);
$rand_keys = array_rand($all_files);
$foto = $cur_dir.$all_files [$rand_keys];
try {
$vk = new VK\VK($app ['app_id'], $app ['app_key'], $app ['app_token']);
// загружаем фото
$server = $vk->api('photos.getWallUploadServer&#
39;, array(
'group_id' => $app ['group_id']
));$load = $vk->file_send($server ['response'] ['upload_url'], '&#
39;, $foto);
echo $load.' - сервак';
$d_load = json_decode($load);$data = $vk->api('photos.saveWallPhoto', array(
'group_id' => $app ['group_id'],
'photo'  
;=> $d_load->photo,
'server' => $d_load->server,
'hash'
=> $d_load->hash
));$data = $vk->api('wall.post', array(
'owner_id' &n
bsp;=> -$app ['group_id'],
'message' &nb
sp;=> 'Тестовое сообщение',
'attachments' => $data ['response'] [0] ['id']
));} catch (VK\VKException $error) {
echo $error->getMessage();
}//unlink($foto);
}
echo '<br />the end';
?>
Есть подозрение на то, что скрипт не определяет сервер, помогите решить эту проблемку
Данный скрипт делает только пост вконтакте, а фотографию к посту не загружает.
Вот код: помогите пожалуйста разобраться
<?php
error_reporting(E_ERROR);
error_reporting(E_ALL);
$groups = array (
'group_1' => array(
'group_id&
#39; => 'ID группы',
'dir'&
nbsp; => &nb
sp; 'some_dir'
),
);
$app ['app_id'] = 'ID приложения';
$app ['app_key'] = 'серетный ключ';
$app ['group_owner'] = 'ID владельца группы';
$app ['group_id'] = 'ID группы';
$app ['app_token'] = 'токен';
$base_dir = dirname(__FILE__).'';
include ("vk.php");
include ("vkexception.php");
foreach ($groups as $group){
sleep(1);
$app ['group_id'] = $group ['group_id'];
$cur_dir = $base_dir .''. $group ['dir'] .'/';
$all_files = scandir($cur_dir);
$rand_keys = array_rand($all_files);
$foto = $cur_dir.$all_files [$rand_keys];
try {
$vk = new VK\VK($app ['app_id'], $app ['app_key'], $app ['app_token']);
// загружаем фото
$server = $vk->api('photos.getWallUploadServer&#
39;, array(
'group_id' => $app ['group_id']
));
$load = $vk->file_send($server ['response'] ['upload_url'], '&#
39;, $foto);
echo $load.' - сервак';
$d_load = json_decode($load);
$data = $vk->api('photos.saveWallPhoto', array(
'group_id' => $app ['group_id'],
'photo'  
;=> $d_load->photo,
'server' => $d_load->server,
'hash'
=> $d_load->hash
));
$data = $vk->api('wall.post', array(
'owner_id' &n
bsp;=> -$app ['group_id'],
'message' &nb
sp;=> 'Тестовое сообщение',
'attachments' => $data ['response'] [0] ['id']
));
} catch (VK\VKException $error) {
echo $error->getMessage();
}
//unlink($foto);
}
echo '<br />the end';
?>
Есть подозрение на то, что скрипт не определяет сервер, помогите решить эту проблемку
Цитата: Misha от 13.10.2015, 19:47А ссылку на библиотеку? А пример такого поста?
А когда тестил это дело? Вчера сервера статики вк сильно лагали.
Ты логировал ответы сервера вк? Если да, то скинь лог, если нет, то начни логировать.
Лень логировать? Просто сделай вывод того, на какой сервер будет загрузка и тд, возможно происходит ошибка, на которую не выкидывается исключение в библиотеке.
Почему ты не указываешь что аттачишь фото? Или оно автоматом определяется?
А ссылку на библиотеку? А пример такого поста?
А когда тестил это дело? Вчера сервера статики вк сильно лагали.
Ты логировал ответы сервера вк? Если да, то скинь лог, если нет, то начни логировать.
Лень логировать? Просто сделай вывод того, на какой сервер будет загрузка и тд, возможно происходит ошибка, на которую не выкидывается исключение в библиотеке.
Почему ты не указываешь что аттачишь фото? Или оно автоматом определяется?