У меня есть простая форма, написанная на PHP с использованием инфраструктуры Codeigniter.Одно из полей, представленных формой, содержит URL-адрес в форме 'http://somedomain.com/web/Api/v2.3/offers.json. Это поле и другие поля в группе форм затем вставляются в таблицу базы данных MYSQL.
Проблема заключается в том, что после вставкив поле столбца он теряет все свое форматирование, так что то, что заканчивается в таблице, выглядит примерно так:
httpsomedomaincomwebApiv23offersjson
Эта строка кода относится к классу формы для поля из представлениймодуль:
Это строка кода из модуля контроллера, который получает данные формы и упаковывает их в массив, готовый для модуля моделей, чтобы превратить его в строку SQL:
'api_url'=> $ this-> cleanInput ($ this-> input-> post (' api_uri ')),
Запустив приложение под названием Burpsuite, которое в основном является прокси-приложением, работающим на моей локальной машине, яперехватил строку сразу после отправки формы и, насколько я вижу, URL правильно отформатирован / закодирован, как показано ниже:
api_uri = http%3A% 2F% 2Fsomedomain.com% 2Fweb% 2Fapi% 2F2.3% 2Fjson & submit =
Однако при проверке поля в базе данных MYSQL запись выглядит так:
httpsomedomaincomwebapi23son
Таким образом, когда-то между отправляемой формой и вставкой в базу данных строка теряет свою кодировку url.
В качестве проверки я вставил строку в формате url в поле базы данных с помощью командной строки MYSQL comnandline ивставленная строка отлично сохраняет форматирование URL.
Любые идеи / помощь будут высоко оценены