Почему у меня такая же проблема с отправкой телеграммы php? - PullRequest
0 голосов
/ 03 мая 2020

Я получаю эту проблему при отправке формы

не удалось открыть поток: HTTP-запрос не выполнен! HTTP / 1.1 400 неверный запрос в /wp-content/themes/portfolio/telegram/telegram-processing.php в строке 44

Этот штрих записан в строке 44

$sendToTelegram = fopen("https://api.telegram.org/bot{$token}/sendMessage?chat_id={$chat_id}&parse_mode=html&text={$txt}","r");

token, id, txt правы. Только эта строка не работает. Пожалуйста, скажи мне, где я ошибся. Спасибо.

1 Ответ

0 голосов
/ 03 мая 2020

Попробуйте заменить свою строку на:

$sendToTelegram = sendMessage($chat_id,$txt,$token);

и добавьте эту функцию в свой код:

function sendMessage($chat_id, $txt, $token) {
    echo "sending message to " . $chat_id. "\n";

    $url = "https://api.telegram.org/bot" . $token . "/sendMessage?chat_id=" . $chat_id;
    $url = $url . "&text=" . urlencode($txt);
    $ch = curl_init();
    $optArray = array(
            CURLOPT_URL => $url,
            CURLOPT_RETURNTRANSFER => true
    );
    curl_setopt_array($ch, $optArray);
    $result = curl_exec($ch);
    curl_close($ch);
    return $result;
}
...