Приходят пустые сообщения с формы в телеграм
Суть проблемы: с формы отправляется заявка в телеграм, но доходит с пустой информацией. Как это можно исправить или в чем проблема?
<form action="php/sendform.php" method="POST" class="modal__form">
<input type="text" name="order_name" class="order__input" id="order_name" placeholder="Ваше имя: *" >
<input type="tel" name="order_phone" class="order__input" id="order_phone" placeholder="Контактный телефон: *">
<input type="text" name="order_city" class="order__input" id="order_city" placeholder="Ваш город: *">
<div class="form__checkbox">
<input type="checkbox" id="checkbox"/>
<label for="checkbox">Я согласен с </label><a href="./privacy-policy.pdf" target="_blank">политикой конфиденциальности</a>
</div>
<input type="submit" name="submit" class="order__submit" id="order_submit" value="Оставить заявку" disabled="disabled">
</form>
<?php
$name = $_POST['order_name'];// Берём данные из input c атрибутом name="name"
$phone = $_POST['order_phone']; // Берём данные из input c атрибутом name="phone"
$city = $_POST['order_city']; // Берём данные из input c атрибутом name="city"
$token = "тут токен мой";
$chat_id = "тут ид мой";
$sitename = "тут сайт"; //Указываем название сайта
$arr = array(
'Заявка с сайта: ' => $sitename,
'Имя: ' => $name,
'Телефон: ' => $phone,
'Город:' => $city
);
foreach($arr as $key => $value) {
$txt .= "<b>".$key."</b> ".$value."%0A";
};
$sendToTelegram = fopen("https://api.telegram.org/bot{$token}/sendMessage?chat_id={$chat_id}&parse_mode=html&text={$txt}","r");
if ($sendToTelegram) {
header('Location: ../pages/thx.php');
} else {
echo "Error";
}
?>
Ответы (1 шт):
Автор решения: JonBrasers
→ Ссылка
так она пустой и будет) попробуйте так
<?
if ($_POST) {
$name = $_POST['order_name'];// Берём данные из input c атрибутом name="name"
$phone = $_POST['order_phone']; // Берём данные из input c атрибутом name="phone"
$city = $_POST['order_city']; // Берём данные из input c атрибутом name="city"
$token = "тут токен мой";
$chat_id = "тут ид мой";
$sitename = "тут сайт"; //Указываем название сайта
$arr = array(
'Заявка с сайта: ' => $sitename,
'Имя: ' => $name,
'Телефон: ' => $phone,
'Город:' => $city
);
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' . $token . '/sendMessage',
CURLOPT_POST => TRUE,
CURLOPT_RETURNTRANSFER => TRUE,
CURLOPT_TIMEOUT => 10,
CURLOPT_POSTFIELDS => array(
'chat_id' => $chat_id,
'text' => $text,
),
)
);
curl_exec($ch);
}
?>
