1
我正在使用OpenCart創建一個從ERP導入數據的應用程序。 在一些項目的描述中有時使用字符「°」(度)。 有問題的標準軟件的插入的應用使用「mysql_real_escape_string」,接受上述指定的字符。 在我的應用程序中,我使用相同的功能,但該功能僅導入「°」之前的前幾個字符,然後轉到下一個產品。 我試過調試,變量包含rightdescription。 Certenly有一個錯誤,但我不明白在哪裏。 有沒有人有類似的問題,並解決了它? 如何?mysql_real_escape_string和特殊字符
感謝 再見
這是我的代碼
$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);
}
}
什麼版本的開放式購物車您使用的是? – 2014-09-22 13:09:11
你應該嘗試'echo'sql字符串...然後使用mysql工具(如命令行或mysql工作臺)來執行它 – 2014-09-22 13:18:35
謝謝Logan Murphy。我用函數utf_encode()「$ this-> db-> escape(utf8_encode($ description_it))」解決了這個問題,因爲我的文本文件是用ASCII編碼的。 – Eugenio 2014-09-22 13:37:32