我在旧版本中有一个opencart扩展程序,因为现在我更新了打开购物车到新版本这个停止工作。任何人都可以帮我解决这个问题吗?
$table = DB_PREFIX . $table;
$result = mysql_query("SHOW COLUMNS FROM $table");
if ($result) {
if (mysql_num_rows($result) > 0) {
while ($row = mysql_fetch_assoc($result)) {
$field_array[] = $row['Field'];
}
}
}
if (!in_array($field, $field_array)){
$query = 'ALTER TABLE ' . $table . ' ADD ' . $field . ' ' . $def;
if ($after != NULL){ $query .= " AFTER " . $after;}
$result = $this->db->query($query);
}
}
我得到的错误是:
Unknown:mysql_query():不推荐使用mysql扩展,将来会删除它:在/ Applications / XAMPP / xamppfiles / htdocs / opencart /
中使用mysqli或PDO注意:未定义的变量:/ Applications / XAMPP / xamppfiles / htdocs /
中的field_array警告:in_array()期望参数2为数组,在/ Applications / XAMPP / xamppfiles / htdocs /
中给出null
我试图解决过去4天的问题,但无法修复。如果我使用:
$result = mysqli_query("SHOW COLUMNS FROM $table");
我得到了错误:
警告:mysqli_query()需要至少2个参数,1在/
中给出
如果我使用:
$result = $this->db->query("SHOW COLUMNS FROM $table");
我收到了错误:
警告:mysql_num_rows()期望参数1是资源,
中给出的对象
答案 0 :(得分:0)
使用$this->db->query
在opencart中运行查询,如下所示:
$result = $this->db->query("SHOW COLUMNS FROM $table");
而不是mysql_num_rows
使用$result->num_rows
。
检查How to become an OpenCart guru?中的Understanding the database object
以了解有关opencart数据库对象的更多信息。
度过美好的一天!!