我试图从动态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);
任何帮助表示赞赏
答案 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); ?>
这非常适合我的需要。