Я работаю над OpenCart, чтобы сделать приложение для импорта данных из ERP. В некоторых описаниях предметов иногда используется символ «°» (градус). Применение вставки стандартного программного обеспечения под вопросом «mysql_real_escape_string» и принимает символ, указанный выше. В моем приложении я использую ту же функцию, но функция импортирует только предыдущие символы до «°», а затем переходит к следующему продукту. Я попытался отлаживать, и переменная содержит правый указатель. 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);
}
}
какую версию открытой корзины вы используете? –
вы должны попробовать 'echo' sql string ... затем выполнить его с помощью инструмента mysql, например командной строки или workbench mysql. –
Спасибо, Логан Мерфи. Я решил эту проблему с помощью функции utf_encode() «$ this-> db-> escape (utf8_encode ($ description_it))», потому что мои текстовые файлы находятся в ASCII. – Eugenio