Что помешает вместо г.Барнаул написать, что-то плохое и отправить в базу?Если у вас в базе хранятся текстовые имена городов - у меня для вас плохие новости. Должен передаваться идентификатор. И да, его надо проверять на существование.
вдруг есть какие-то способы стандартныеЕсть конечно. Создается сущность из идентификатора, и если она не пустая - все ок. В некоторых случаях (на самом деле довольно часто) нужно проверять разрешено ли модифицировать данную сущность данным пользователем.
Если id не отличаются, то имена тоже будут одинаковые.Хм, нифига подобного. Имена вполне себе могут быть повторяющимися и по ним тоже будет группировка. Есть смысл делать группировку по уникальному числовому полю, а не по тексту.
{"error": 0, "info":"success!"}
и проверять if( data.error == 0 )
url: '<?= base_url("logs") ?>/save_error.log',
- какой-то странный урл, похож на файл лога ))) хотя это конечно же можно прописать в роутинге как экшн.data: dataEdit
- надеюсь вы понимаете что сюда сначала нужно что-то добавить, и желательно строку