Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 什么';我的电报查询有什么问题吗?_Php_Mysql_Telegram_Telegram Bot - Fatal编程技术网

Php 什么';我的电报查询有什么问题吗?

Php 什么';我的电报查询有什么问题吗?,php,mysql,telegram,telegram-bot,Php,Mysql,Telegram,Telegram Bot,它返回一个空数组。我想,这是我发送消息时没有内联按钮的主要原因。查询失败,因为name是一个错误 修复方法是将关键字括起来,如下所示: public function createCityDialog() { $selectCity = "select name from telegramCity limit 6 offset 0"; $result = mysqli_query($this->connection, $selectCity); while ($row =

它返回一个空数组。我想,这是我发送消息时没有内联按钮的主要原因。

查询失败,因为
name
是一个错误

修复方法是将关键字括起来,如下所示:

public function createCityDialog() {

  $selectCity = "select name from telegramCity limit 6 offset 0";
  $result = mysqli_query($this->connection, $selectCity);

  while ($row = mysqli_fetch_assoc($result)) {
    /* 
    $this->buttons[] = [
      'text' => $row["name"]
    ];*/

    $this->buttons["text"] = $row["name"];
  }

  $this->telegramAPI->sendMessage($this->buttons, $this->chatID);
  $this->telegramAPI->api("sendMessage", [
    'chat_id' => $this->chatID,
    'text' => 'Виберіть місто',
    'reply_markup' => [
      'inline_keyboard' => [
        $this->buttons
      ]
    ]
  ]);
}
还有一部分是,如果有更多的结果,它不会被附加到数组中

$selectCity = "select `name` from telegramCity limit 6 offset 0";

您的注释代码也可以完成此任务。

步骤1,诊断
var_dump($result)
@xorifese,我无法使用
var_dump
,但我尝试在管理员
$this->按钮[“text”]=$row[“name”]中进行此查询需要是
$this->按钮[“文本”][]=$row[“名称”];//使它成为一个数组来保存所有值,而不是最后一个值,这也是我的第一个想法,除了1个值之外。
“内联键盘”有一些东西,但它是空的。像这样更改,是否会出现任何错误<代码>$result=mysqli_query($this->connection,$selectCity)或die(mysqli_error($this->connection))我已经更改了它。将
name
更改为
districtName
$this->按钮[“文本”][]=$row[“名称”]。现在这个数组看起来像
{“text”:[null,null,null,null,null,null]}
。但它不是空的:DI尝试了
$this->buttons[][“text”]=$row[“name”]
并接收
[{“text”:null},{“text”:null},{“text”:null},{“text”:null},{“text”:null},{“text”:null}]
这意味着
$row[“name”]
的值是
null
。也许可以诊断store
json\u encode($row)
并查看响应以了解您需要什么。我想,
$row[“districtName”]
可以修复它。是的,我修复了它,现在接收到正确的数组,但无法使用内联按钮发送消息><没有错误
$this->buttons["text"][] = $row["name"];