1

Я сделал этот код в моем .php-файле, где я установил webHook, который работает хорошо.Обновления в телеграмме bot switch()

$token = "my token"; 
$website = "https://api.telegram.org/bot" . $token . "/"; 
$updates = file_get_contents("php://input"); 
$updates = json_decode($updates, true); 
$text = $updates["message"]["text"]; 
$chatID = $updates["message"]["chat"]["id"]; 

switch($text){ 
    case "/prova_gratuita": 
     if(check($chatID)){ 
      sendMessage($chatID, "Are you sure? Demo is available only one time. Write confirm to continue"); 
      switch($text){ 
      case "confirm": 
       ... 
       break; 
      } 
     } 

Второй switch() не работает. Зачем? Что я могу сделать? Я знаю, что должен обновить значение $text, но я не знаю, как я это сделаю

+1

Зачем это нужно? –

+0

Извините, я не задал вопрос. @u_mulder – Riccardo

ответ

0

Я думаю, что ошибка в том, как вы решили проблему. Каждый ввод бота является вызовом этого WebHook. Тогда $ text не может быть aggornato таким образом.

Вы также должны включить в первый переключатель «случай» второго.

$token = "my token"; 
$website = "https://api.telegram.org/bot" . $token . "/"; 
$updates = file_get_contents("php://input"); 
$updates = json_decode($updates, true); 
$text = $updates["message"]["text"]; 
$chatID = $updates["message"]["chat"]["id"]; 

switch($text){ 
    case "/prova_gratuita": 
     if(check($chatID)) sendMessage($chatID, "Are you sure? Demo is available only one time. Write confirm to continue"); 
    case "confirm": 
    ... 

} 

Каждый раз, когда вы отправляете сообщение боту, он звонит в WebHook. Таким образом, чтобы изменить состояние обновлений $, так что даже $ text скрипт должен перезагрузиться

+0

Я понимаю. Спасибо – Riccardo

+0

Каждый раз, когда вы отправляете сообщение боту, он звонит в WebHook. Таким образом, чтобы изменить состояние $ updates, так что даже $ text скрипт должен перезапустить –

+0

Sisi adesso ci sono arrivato. Grazie di nuovo – Riccardo