• Не могу нормально сделать вывод смс при вступление в группу ВК БОТ?

    @nikitos42050
    PHP, C# Developer
    Во-первых Вы передаете параметр 'v' => '5.0', хотя минимум должен быть 5.50.
    Вы должны передавать версию API, которую используете, а не версию PHP.

    Во-вторых, я бы рекомендовал обновить версию PHP на более шуструю, чем 5.0.
    В-третьих, в строчке: "$user_info = json_decode(file_get_contents("https://api.vk.com/method/users.get?user_ids={$use..."));" нет окончания строки, хотя )); есть. Хм, возможно Вы откуда-то просто скопировали этот код, но это нам не важно.

    Просто замените эту строку на:
    $user_info = json_decode(file_get_contents("https://api.vk.com/method/users.get?user_ids={$user_id}&access_token={$token}&v=5.103"));
    
    Потом... строчку 'v' => '5.0'
    Замените на 'v' => '5.103'
    
    В настройках группы, замените в разделе "Работа с API" -> "Callback API" -> "Настройка сервера" версию API на 5.103.
    А в разделе  "Работа с API" -> "Callback API" -> "Типы запросов" поставьте галочки "Вступление в сообщество", и если нужно то "Выход из сообщества".


    И также Ваш код заканчивается на:
    //С помощью messages.send и токена сообщества отправляем ответное сообщение
    $request_params = array(
    'message' => "Добро пожаловать в наше сообщество, {$user_name}!",
    'user_id' => $user_id,
    'access_token' => $token,
    'v' => '5.0'
    );


    Хотя, в таком случае нужно также и отправить его.
    Добавьте в конце
    $get_params = http_build_query($request_params);
    file_get_contents('https://api.vk.com/method/messages.send?'. $get_params);
    echo('ok'); (Если нет)
    break; (Если нет)

    Также, если нужно помочь настроить, и если Вы не поняли ничего по моему тексту, то напишите мне в VK.
    Ответ написан
    Комментировать