- Автор темы
- #1
Темка не моя, но мне со своей рулеткой очень помогла. Наверняка поможет и вам. Скрипты очень отличатся могут, по-этому если что пишите мне, постараюсь вам помочь.
-------------------------------------------------------------------------------------------------------
На днях вышло обновление API VK
Пруф - https://vk.com/dev/version_update_2.0
В связи с этим у многих рулеток поломалась авторизация.
ErrorException in LoginController.php
line 26: Undefined index: response
Выпускаю инструкцию по фиксу:
Открываем файл LoginController, ищем метод vklogin или что то похожее.
В нем будет curl запрос на api вк, что то типо этого:
Нам нужно зайти сюда: https://vk.com/dev/version5 во второй колонке будет старое название параметра в первой будет новое название, меняем в своем коде соответсвенно.
В моем случае нужно изменить user_id на uids
Далее в конце есть параметр v=V, его заменяем на v=5.0:
После этого мы должны идти в низ по коду и искать фразу uid и заменять ее на id
-------------------------------------------------------------------------------------------------------
На днях вышло обновление API VK
Пруф - https://vk.com/dev/version_update_2.0
В связи с этим у многих рулеток поломалась авторизация.
ErrorException in LoginController.php
line 26: Undefined index: response
Выпускаю инструкцию по фиксу:
Открываем файл LoginController, ищем метод vklogin или что то похожее.
В нем будет curl запрос на api вк, что то типо этого:
Код:
$info = json_decode($this->curl('https://api.vk.com/method/users.get?user_ids&fields=photo_200&access_token=' . $obj->access_token . '&v=V'), true);
Нам нужно зайти сюда: https://vk.com/dev/version5 во второй колонке будет старое название параметра в первой будет новое название, меняем в своем коде соответсвенно.
В моем случае нужно изменить user_id на uids
Код:
$info = json_decode($this->curl('https://api.vk.com/method/users.get?uids&fields=photo_200&access_token=' . $obj->access_token . '&v=V'), true);
Далее в конце есть параметр v=V, его заменяем на v=5.0:
Код:
$info = json_decode($this->curl('https://api.vk.com/method/users.get?uids&fields=photo_200&access_token=' . $obj->access_token . '&v=5.0'), true);
После этого мы должны идти в низ по коду и искать фразу uid и заменять ее на id
Код:
$user = User::where('login2', $info['response'][0]['id'])->first();
if($user == NULL)
{
if(array_key_exists('photo_200', $info['response'][0]))
{
$photo = $info['response'][0]['photo_200'];
}
else
{
$photo = 'http://vk.com/images/camera_200.png';
}
$user = User::create([
'username' => $info['response'][0]['last_name'] . ' ' . $info['response'][0]['first_name'],
'avatar' => $photo,
'login' => 'id'.$info['response'][0]['id'],
'login2' => $info['response'][0]['id'],
'ref_code' => $this->generate()
]);
}
else
{
if(array_key_exists('photo_200', $info['response'][0]))
{
$photo = $info['response'][0]['photo_200'];
}
else
{
$photo = 'http://vk.com/images/camera_200.png';
}
$user->username = $info['response'][0]['last_name'] . ' ' . $info['response'][0]['first_name'];
$user->avatar = $photo;
$user->login = 'id'.$info['response'][0]['id'];
$user->login2 = $info['response'][0]['id'];
$user->save();
}