Я новичок в кодеригере. Проблема, с которой я сталкиваюсь, заключается в том, что я храню значение в базе данных, а codeigniter добавляет одинарные кавычки вокруг моего значения, и если у меня есть одинарные кавычки вокруг моего значения, SQL-сервер не сохраняет его и запрашивает ошибку.codeigniter избежать добавления котировок до значения
Я на самом деле получить данные из таблицы, как этот
$this->db->select('priority, address, shape.STAsText() shape');
$this->db->from('POI');
$this->db->where("OBJECTID = '$id'");
$poi = $this->db->get()->row();
Следующая вещь, которую я манипулировать значение формы колонки перед вставкой этих данных в другую таблицу. Для этого я получаю атрибут $poi
объекта shape
и манипулировать им как ниже
$poi->shape = "geometry::STGeomFromText('$poi->shape',4326)";
Теперь, когда я пытаюсь сохранить этот $poi
в базу данных, как показано ниже
$this->db->insert('poi_logs',$poi)
Запрос выглядит
INSERT INTO "poi_logs" ("priority", "address", "shape")
VALUES
(6, 'Street 40 Margalla Town Phase 2 Islamabad', 'geometry::STGeomFromText(''POINT (73.106225740025934 33.668451250424937)'',4326)');
Вы можете видеть, что он добавляет одинарные кавычки по значению shape
, а также добавляет одинарные кавычки где когда-либо котировки подписей входят в стоимость. Я хочу избежать этого. Я хочу сделать заявление, как показано ниже
INSERT INTO "poi_logs" ("priority", "address", "shape")
VALUES
(6, 'Street 40 Margalla Town Phase 2 Islamabad', geometry::STGeomFromText('POINT (73.106225740025934 33.668451250424937)',4326));
Я осмотрелся, но не смог найти решение. Если кто-нибудь знает, пожалуйста, помогите мне
Отредактировано
, если я использую
$poi->shape = $this->db->escape("geometry::STGeomFromText('$poi->shape',4326)");
результирующий запрос выглядит
INSERT INTO "poi_logs" ("priority", "address", "shape")
VALUES
(6, 'Street 40 Margalla Town Phase 2 Islamabad', '''geometry::STGeomFromText(''''POINT (73.106225740025934 33.668451250424937)'''',4326)''')
уверен, что это происходит из-за того, что ваши значения извлекаются() в нем, и это беспорядок с PHP, его нужно избегать этих подробностей ... Можете ли вы сохранить без()? Вы пытались вывести значения туда, где вам нужно, и посмотреть, действительно ли это проблема при его отображении? –
нет, мне нужно добавить '()' в значение – muzaffar
@RejoanulAlam .. Да, я пробовал это, но не добился успеха. Я обновил вопрос, пожалуйста, посмотрите, было ли это так, вы говорили, чтобы попробовать. – muzaffar