Версия друпал 7.59
Давно занимаюсь друпалом, но с таким впервые столкнулся.
Есть запрос на сохранение/обновление данных:
<?php
function as_contact_save_info($info){
$insert = db_merge('a_salon_сontacts');
$insert->insertFields(array(
'uid' => $info['uid'],
'type' => $info['type'],
'about' => $info['about'],
'contact' => $info['contact'],
'weight' => $info['weight'],
));
$insert->updateFields(array(
'type' => $info['type'],
'about' => $info['about'],
'contact' => $info['contact'],
'weight' => $info['weight'],
));
$insert->condition('id', $info['line_id'], '=');
$insert->execute();
}
?>
Обработка через Ajax. При этом выдается такая вот ошибка
Вопрос: почему в названии таблицы исчезла буква "С"?. Стоит переименовать таблицу другим именем,
все нормально становится.
p.s.: гуглил, яндексил
Комментарии
С - латинская или русская?![Smile](https://drupal.ru/sites/all/modules/contrib/smiley/packs/kolobok/smile.gif)
Конечно латинская. Это в первую очередь проверил![Smile](https://drupal.ru/sites/all/modules/contrib/smiley/packs/kolobok/smile.gif)
Попробуйте так:
<?php$insert = db_merge('`a_salon_сontacts`');?>
там по парсингу все что угодно может быть, поскольку у вас имя поле type - зарезервированный ключевик sql
попробуйте так тоже:
<?php
...
'`type`' => $info['type'],
...
?>
fairrandir прав. Русская буква "С". Решил еще раз проверить.Сейчас нашел онлайн конвертер символов в числовые значения, в нем есть удобная функция - кодировать только русские символы. Тут мне буква "С" и попалась.
Вопрос решен.
Проверить можно было проще - просто в редакторе Ctrl-F и вбить русскую с.