Почему мой телеграмм-бот не отправляет сообщение на канал, когда я использую cronjob?

Привет, ребята, у меня есть телеграмм-бот, и я пытаюсь отправить сообщение на свой канал. я хочу планировать и отправлять свои сообщения в определенное время. я пытаюсь использовать cronjob, и что-то происходит, когда я использую cronjob, он не отправляет сообщение, но когда я вручную вызываю этот URL-адрес (мой файл cronjob на хосте), он отлично отправляет сообщение Вот мой код, я получаю сообщение из базы данных и отправляю его!!

while ($row = $res->fetch(PDO::FETCH_ASSOC)) {
    $User_ID = $row["user_id"];
    $Caption = $row["body"] . "\n\n";
    $ChannelID = $row["channel_id"];

    $telegram->mSendMessageToChannel($ChannelID, $Caption);
    $telegram->mSendSimpleMessage($User_ID, "post sent.");

}

все хорошо, пока я не могу получить сообщение от БД, и все хорошо. вот мой метод mSendMessageToChannel

 public function mSendMessageToChannel($channelID, $postText)
{
    $url = 'https://api.telegram.org/bot' . $this->token . '/sendMessage';

    $post_fields = array(
        'chat_id' => "$channelID",
        'text' => $postText
    );

    $this->executeCURL($url, $post_fields);
}

и вот мой метод mSendSimpleMessage

 public function mSendSimpleMessage($userId, $text)
{
    $url = "https://api.telegram.org/bot" . $this->token . "/sendMessage";
    $post_fields = array(
        "chat_id" => $userId,
        'text' => $text
    );
    $this->executeCURL($url, $post_fields);
}

и вот мой метод executeCURL:

 public function executeCURL($url, $post_fields)
{
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_HTTPHEADER, array(
        "Content-Type:multipart/form-data"
    ));
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $post_fields);
    $output = curl_exec($ch);
}

и вот ошибка, которую я получил, он не может распознать мой канал:

[15-Mar-2019 07:13:01 UTC] PHP Warning: curl_setopt() [function.curl-setopt]: Unable to access branio_ir in /home1/derakhtc/public_html/telegramBot/HafezederakhshanBot/telegram.php on line 85

строка 85 — curl_setopt($ch, CURLOPT_POSTFIELDS, $post_fields);

мой бот полный админ на моем канале спасибо за помощь

Что в $post_fields??

Rotimi 15.03.2019 08:40

@Akintunde-Rotimi $post_fields = array( 'chat_id' => "$channelID", 'text' => $postText );

Mir.Ebrahim Jafarpour Zonuzi 15.03.2019 08:41

Вы пытались исправить права доступа к папке?

Guga Nemsitsveridze 15.03.2019 08:44

@Akintunde-Rotimi - это массив из того, что я хочу отправить в Telegram API

Mir.Ebrahim Jafarpour Zonuzi 15.03.2019 08:44

@Guga Nemsitsveridze у меня нет проблем с папками

Mir.Ebrahim Jafarpour Zonuzi 15.03.2019 08:45

Следовательно, это дает вам ошибку, что что-то Unable to access может иметь проблемы с разрешениями

Guga Nemsitsveridze 15.03.2019 08:46

Убедитесь, что у папки есть права 777.

Guga Nemsitsveridze 15.03.2019 08:47

нет, что-то является идентификатором моего общедоступного канала, он говорит, что не может получить к нему доступ, проблема в том, что эта ошибка возникает, когда я использую задание cron, но все в порядке, когда я вызываю свой файл cronjob непосредственно из браузера.

Mir.Ebrahim Jafarpour Zonuzi 15.03.2019 08:48

{"ok":false,"error_code":400,"description":"Неверный запрос: текст сообщения пуст"} я получил это сейчас, я отправляю текстовый параметр, но он возвращает мне это

Mir.Ebrahim Jafarpour Zonuzi 15.03.2019 09:10
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
9
491
0

Другие вопросы по теме