Всем доброго времени суток.
В PHP я вообще новичок и возник такой вопрос.
Есть страница (index.html) с простой формой, которую заполняет пользователь.
Есть страница (telegram.php) где используется API telegram и отправляется информация с формы в чат telegram. Подключение идет через API. Ниже листинг:
<?php
#Как узнать chat_id
#https://api.telegram.org/botXXXXXXXXXXXX/getUpdates
#где, XXXXXXXXXXXX - токен бота
#Объявление переменных
define('TELEGRAM_TOKEN', 'XXXXXXXXXXXXXXXXXXXXX');
define('TELEGRAM_CHATID', 'XXXXXXXXX');
$name = $_POST['user_name'];
$phone = $_POST['user_phone'];
$email = $_POST['user_email'];
$date = date("d.m.y", strtotime('+2 hour'));
$time = date("H:i", strtotime('+2 hour'));
$arr = array(
'Имя пользователя: ' => $name,
'Телефон: ' => $phone,
'Email: ' => $email,
'Дата: ' => $date,
'Время: ' => $time
);
foreach ($arr as $key => $value) {
$txt .= "<b>".$key."</b> ".$value."%0A";
};
message_to_telegram($txt);
function message_to_telegram($text) {
$ch = curl_init();
curl_setopt_array(
$ch,
array(
CURLOPT_URL => 'https://api.telegram.org/bot' . TELEGRAM_TOKEN . '/sendMessage',
CURLOPT_POST => TRUE,
CURLOPT_RETURNTRANSFER => TRUE,
CURLOPT_TIMEOUT => 10,
CURLOPT_POSTFIELDS => array(
'chat_id' => TELEGRAM_CHATID,
'text' => $text,
),
CURLOPT_PROXY => 'lol-tele.ga:99999',
CURLOPT_PROXYUSERPWD => 'lol-telega:84dScm',
CURLOPT_PROXYTYPE => CURLPROXY_HTTP,
CURLOPT_PROXYAUTH => CURLAUTH_BASIC,
)
);
curl_exec($ch);
}
Все хорошо, сообщения идут в телегу, но идут вот такого вида:
Имя пользователя: Пользователь%0A
Телефон: +79999999999%0A
Email: mail@mail.ru%0A
Дата: 17.05.19%0A
Время: 11:13%0A
Как я понял, в этом куске не обрабатываются тэги HTML
foreach ($arr as $key => $value) {
$txt .= "<b>".$key."</b> ".$value."%0A";
};
Подскажите пожалуйста почему и как это исправить?
Код скопипастил, он не мой. почему в том или ином месте используется так, а не сяк я не знаю честно. И сразу извиняюсь.