vk api + php пост на стену с картинкой

Тема в разделе "PHP", создана пользователем gauss_gauss, 17 май 2014.

Модераторы: latteo
  1. gauss_gauss

    gauss_gauss Постоялец

    Регистр.:
    13 окт 2011
    Сообщения:
    87
    Симпатии:
    4
    Люди выручайте! Парюсь весь день и не могу получить результат.
    Хочу через скрипт постить на стену группы новость с приаттаченой картинкой или несколькими картинками.
    Нашел много решений, но не пойму как они работают :(
    Вот например:
    Код:
    https://github.com/fdcore/vk.api
    в описании сказано
    Код:
    Выполним метод get_code_token для получения ссылки которая вернёт нам code
    
    include('vk.api.php');
    $v = new Vk($config);
    $url = $v->get_code_token();
    
    echo $url;
    Мне выдается ссылка
    Код:
    https://oauth.vk.com/authorize?client_id=&scope=offline&redirect_uri=https://oauth.vk.com/blank.html&display=page&v=5.15&response_type=code
    переходя по которой я получаю
    Код:
    {"error":"invalid_client","error_description":"client_id is incorrect"}
    явная проблема с передачей айди. листаю дальше, вижу автор пишет про выполнение api и тут параметры
    $config. Вставляю параметры по аналогии и формирую уже нормальную ссылку, перейдя по которой я получаю сслыку типа
    Код:
    https://oauth.vk.com/blank.html#code=xxxxxxxxxx
    дальше написано
    Код:
    Для получения токена и owner_id выполните метод get_token()
    
    $response = $v->get_token('xxxxxxxxxx');
    
    var_dump($response);
    и var_dump выдает пустой массив! Господа, что делать? Как дальше быть?

    ПОЖАЛУЙСТА НЕ МЕДЛИ!!! Уже сам пишу свой скрипт. Залип на сохранении фоток на стене вконтакте! не могу получить ответ от сервера используя метод photos.saveWallPhoto
     
    Последнее редактирование модератором: 17 май 2014
  2. latteo

    latteo Эффективное использование PHP, MySQL

    Moderator
    Регистр.:
    28 фев 2008
    Сообщения:
    1.450
    Симпатии:
    1.244
    В скрипте проблемы с сертификатами.
    В файле vk.api.php в метод curl_post добавь строку
    PHP:
     curl_setopt($curlCURLOPT_SSL_VERIFYPEER0);
    перед
    PHP:
    $out curl_exec($curl);
    у меня после этого начало постить

    curl там еще в 4 методах используется возможно им тоже потребуется такой параметр.
     
    gauss_gauss нравится это.
  3. evilus

    evilus Создатель

    Регистр.:
    16 май 2014
    Сообщения:
    27
    Симпатии:
    7
    Держите. Не думал, что моё творение будет кому-то интересно.
    Кстати, тоже очень долго мучался с методом photos.saveWallPhoto (из-за некорректного ответа метода photos.getWallUploadServer)
     

    Вложения:

    • vk_avtopost.zip
      Размер файла:
      4,6 КБ
      Просмотров:
      179
    Последнее редактирование модератором: 17 май 2014
    verfaa, E-body, gauss_gauss и ещё 1-му нравится это.
  4. gauss_gauss

    gauss_gauss Постоялец

    Регистр.:
    13 окт 2011
    Сообщения:
    87
    Симпатии:
    4
    все верно, без этого не работает!

    Спасибо друг, ты сделал мой день!
     
  5. Aserus

    Aserus Постоялец

    Регистр.:
    16 ноя 2013
    Сообщения:
    78
    Симпатии:
    4
    а зачем использовать в данном случае php?
    Все же считаю более правильным сделать это через openAPI на js

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

    latteo Эффективное использование PHP, MySQL

    Moderator
    Регистр.:
    28 фев 2008
    Сообщения:
    1.450
    Симпатии:
    1.244
    Задача значит такая. Может это некий аналог десктопного клиента. Может автопостинг новостей сайта и т.п.
    Еще сотни вариантов, когда JS не поможет.
     
    verfaa и Aserus нравится это.
  7. verfaa

    verfaa

    Регистр.:
    29 янв 2007
    Сообщения:
    375
    Симпатии:
    41
    evilus, а подскажи пожалуйста как пользоваться твоим скриптом.
    Я раньше автопостингом в вк не занимался.
    Я запустил index.php - мне выдалось 2 формы, я так понимаю нужно создать 2 разных Standalone-приложения тут https://vk.com/editapp?act=create ?
    Или другой тип выбирать, не Standalone?
    Далее все данные автоматом пропишутся или нужно что-то вручную в ini.php прописывать?
    В какую папку картинки загружать, чтобы они постились? Какой файл на крон ставить?