Telegram Bot Inline Keyboard not displaying PHP
14,436
It looks like you are missing an additional array. The reply_markup
should look like this:
$keyboard = array(
"inline_keyboard" => array(array(array("text" => "My Button Text", "callback_data" => "myCallbackData")))
);
Related videos on Youtube
Author by
dean2020
Updated on June 05, 2022Comments
-
dean2020 almost 2 years
The following code works, it adds custom keyboard keys 'Button1' and 'Button2'
$keyboard = [ 'keyboard' => [['Button1'],['Button2']], 'resize_keyboard' => true, 'one_time_keyboard' => true, 'selective' => true ]; $keyboard = json_encode($keyboard, true); $sendto = API_URL."sendmessage?chat_id=".$chatID."&text=".$reply."&parse_mode=HTML&reply_markup=$keyboard";
I need to use Inline Keyboard though for my purposes, but I haven't been able to get it to work
$keyboard = [ 'inline_keyboard' => [['Button1' => 'test', 'callback_data' => 'test'], ];
or
$keyboard = [ 'inline_keyboard' => [['Button1' => 'test'],['callback_data' => 'test']], ];
doesn't work. I would really appreciate if anyone has a working example or can point out what is wrong in my example.
Link to documentation: https://core.telegram.org/bots#inline-keyboards-and-on-the-fly-updating