gpt4 book ai didi

php - Codeigniter总是只返回查询结果的第一行

转载 作者:行者123 更新时间:2023-11-29 23:46:03 25 4
gpt4 key购买 nike

更新

我尝试在我的 Controller 上使用sizeof($result),结果大于1,所以我认为错误出现在某个地方在 Controller 上

我尝试运行此查询:

    $query = "SELECT * FROM `hospital` WHERE name LIKE '%$keyword%' OR address LIKE '%$keyword%' OR telp LIKE '%$keyword%'";

$keyword 取决于用户在应用中输入的内容。

这是 CI 查询:

$query = $this->db->select('*')
->from($table)
->like('name', $keyword, 'both')
->or_like('address', $keyword, 'both')
->or_like('telp', $keyword, 'both')
->get()
->result_array();

上面的查询始终只返回第一行。

这是在 Controller 中:

if(sizeof($result) > 0)
{
foreach($result as $hospital)
{
if($hospital)
{
$this->response(array('result' => 'true',
'id' => $hospital['id'],
'name' => $hospital['name'],
'address' => $hospital['address'],
'telp' => $hospital['telp']), 200); // 200 being the HTTP response code
}
}
}
else
{
$this->response(array('result' => 'false'), 404);
}

我的错误在哪里?当我尝试在 phpmyadmin 中硬输入查询时,查询完美运行(返回所有行)。

感谢您的宝贵时间

最佳答案

您将查询结果分配给 $query 变量,然后尝试迭代尚未在任何地方声明的 $result 数组。尝试:

if(sizeof($query) > 0) {
// ...
}

或将 $query 更改为 $result

关于php - Codeigniter总是只返回查询结果的第一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25946153/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com