我正在开发OpenCart来创建一个从ERP导入数据的应用程序。 在某些项目的描述中,有时使用字符“°”(度)。 有问题的标准软件的插入应用程序使用“mysql_real_escape_string”并接受上面指定的字符。 在我的应用程序中,我使用相同的功能,但该函数仅导入“°”之前的前一个字符,然后转到下一个产品。 我试过调试,变量包含正确的描述。 Certenly有一个错误,但我不明白在哪里。 有谁有类似的问题并解决了吗? 怎么样?
感谢 再见
这是我的代码
$this->db->query("UPDATE " . DB_PREFIX . "product_description SET name = '" . $this->db->escape($description_it) . "' WHERE product_id = '" . (int)$product_id . "' AND language_id = '2'");
这是Opencart的功能
public function escape($value) {
if ($this->link) {
return mysql_real_escape_string($value, $this->link);
}
}
答案 0 :(得分:1)
反向参数:
string mysqli_real_escape_string(mysqli $ link,string $ escapestr)
您需要更改行:
mysql_real_escape_string($this->link, $value);