Использую CI. Пытаюсь записать serialize() строку, но получаю ошибку
Error Number: 1064
You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'WHERE id = '1'' at line 4
UPDATE pages SET content = 'a:7:{s:5:\"dutch\";s:0:\"\";s:7:\"english\";s:17:\"regerg erg ergerg\";s:10:\"indonesian\";s:0:\"\";s:7:\"russian\";s:32:\"русиянский язык х\";s:18:\"simplified-chinese\";s:0:\"\";s:7:\"spanish\";s:0:\"\";s:7:\"turkish\";s:0:\"\";}', WHERE id = '1'
Filename: models/Pages_model.php
Line Number: 101
Строка для записи:
a:7:{s:5:"dutch";s:0:"";s:7:"english";s:17:"regerg erg ergerg";s:10:"indonesian";s:0:"";s:7:"russian";s:29:"русиянский язык";s:18:"simplified-chinese";s:0:"";s:7:"spanish";s:0:"";s:7:"turkish";s:0:"";}
Код model:
function edit_page($data = array())
{
if ($data)
{
$sql = "
UPDATE {$this->_db}
SET
content = " . ((is_array($data['content'])) ? $this->db->escape(serialize($data['content'])) : $this->db->escape($data['content'])) . ",
WHERE id = " . $this->db->escape($data['id']) . "
";
$this->db->query($sql);
if ($this->db->affected_rows())
{
return TRUE;
}
}
return FALSE;
}
Благодарен за любую помощь!
Уберите запятую перед WHERE
$sql = "
UPDATE {$this->_db}
SET
content = " . ((is_array($data['content'])) ? $this->db->escape(serialize($data['content'])) : $this->db->escape($data['content'])) . "
WHERE id = " . $this->db->escape($data['id']) . "
";
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости