如何从Opencart2 Mysqli Query获取字段名称

时间:2015-07-27 20:08:57

标签: php mysqli opencart2.x

我试图从动态Mysqli查询中获取opencart中的字段名称但是我得到以下错误: -

Warning: mysqli_fetch_fields() expects parameter 1 to be mysqli_result, object given in [mypath]

这是在运行返回行的SELECT查询时

查询运行所以不是因为查询失败或返回空结果。

这是一个代码示例

$mysqlQuery = $this->db->query("SELECT * FROM attribute");
        $fieldinfo = mysqli_fetch_fields($mysqlQuery);

任何帮助表示赞赏

3 个答案:

答案 0 :(得分:0)

注意:我假设您的配置文件中有'DB_DRIVER'=> 'mysqli'

现在运行$mysqlQuery = $this->db->query("SELECT * FROM ".DB_PREFIX."attribute");

db执行mySqli->query函数来获取数据,因此我们可以将fetch_fields()函数添加到mySqli->query返回值

system/library/db/mysqli.php:32

$result->rows = $data;之后

添加$result->fields = $query->fetch_fields();

现在你可以通过调用

来获取Fields
$mysqlQuery = $this->db->query("SELECT * FROM ".DB_PREFIX."attribute");
print_r($mysqlQuery->fields);

答案 1 :(得分:0)

试试这个

$columns = $this->db->query("SHOW COLUMNS FROM " . DB_PREFIX . "table_name"); print_r($columns->rows);

答案 2 :(得分:0)

最后,我使用了查询结果的关联数组,并使用带有$ key的foreach循环输出表头名。

<?php foreach($results as $key => $result); ?>

这非常适合我的需要。