Бот отправляет в чат отформатированное сообщение HTML со встроенной кнопкой:
И это код того, как бот отправляет это сообщение:
$text = '
<b>Новый заказ на сайте:</b>
№ M-0100772645177 на сумму 25.000 рублей
<b>Информация о заказе:</b>
<i>Товар - </i><a href="#">Антенна 5 дБи WiFi</a>
<i>Доставка - </i>ул. Пушкина, дом Колотушкина
<i>Комментарий - </i>привезите заказ не позже 6 вечера
';
$data = http_build_query([
'text' => $text,
'chat_id' => '100000000'
]);
// Create keyboard
$keyboard = json_encode([
"inline_keyboard" => [
[
[
"text" => "Взять заказ ",
"callback_data" => "get_order"
]
]
]
]);
// Send keyboard
$url = "https://api.telegram.org/bot$token/sendMessage?{$data}&reply_markup={$keyboard}&parse_mode=html";
$res = @file_get_contents($url);
Если щелкнуть встроенную кнопку, он добавляет к сообщению некоторый текст (также html отформатированный) и изменяет текст встроенной кнопки на другой.
Код, который выполняет это изменение:
<code>$text .= "
<b>Ключ доступа к заказу: </b> <pre>".$accKey."
"; $ data = http_build_query (['text' => $ text, 'chat_id' => $ chat_id, 'message_id' => $ updates-> callback_query-> message-> message_id]); $ клавиатура = json_encode (["inline_keyboard" => [[["text" => "Заказ назначенных продавцу,", "callback_data" => "order_set"]]]]); @file_get_contents ("
https://api.telegram.org/bot $ bot_token / editMessageText? { $ data} & reply_markup = {$ keyboard} & parse_mode = html ");
И результат:
Как видите, предыдущий текст потерял HTML форматирование, но последние строки имеют его.
Вопрос: Как сохранить HTML Форматирование предыдущего т ext?