Urlencode расширенная практика применения

UrlEncode — php-функция, которая подготавливает значение для использования его как часть html ссылки, заменяя спец. символы, кириллицу и т.п. на закодированные hex значения. Обычно так подготавливают GET параметры, передаваемые в url:

URLencode и массивы

Ф-ция urlencode работает только со скалярами. Если вам необходимо сформировать GET параметры из набора параметров (массива) или даже массива массивов, то следует воспользоваться более мощной функцией — http_build_query().

Сформируем ссылку из массива параметров и посмотрим, как эти данные вернутся в $_GET.

URLencode и HTML FORM

Если нужно передать массив параметров в составе формы, как часть данных этой формы, то можно поступить двумя способами:

Передача данных через action

Так можно передать данные, только если установлен тип отправки данных — POST.

или

Если выбрать метод GET, то вместо параметров action в GET будут переданы данные самой формы.

Формирование полей формы

Для случая формы мы также можем сформировать набор «скрытых» полей. Никакие специальные функции PHP здесь не понадобятся, все придется делать самим.

У меня получилась вот такая функция для создания набора тегов input :

В качестве первого параметра она принимает массив данных. Второй параметр позволяет указать имя переменной. Функция работает рекурсивно, так что массив может быть многократно вложенным.

Добавим результат её работы в форму:

В случае нашего массива $a, получим следующий html-код:

Urlencode online

Применение urlencode() очень узкое, на практике больше возникает необходимости в использовании http_build_query(). А в случае подготовки форм, так и вообще обе остаются не у дел.

Чтобы полностью закрыть вопросы с urlencode, предлагаю посмотреть как работает функция «вживую»:

Введите данные для обработки PHP URLencode():


Мало букафф? Читайте есчо !

Читаем курсы валют, реализация для drupal

Декабрь 5, 2012 г.

Как я писал ранее, хороший информ-сервис, это не куча вариантов виджетов для вашего сайта, а, в наиболее ценном случае, возможность грузить данные информ-сервиса в виде xml. В развитом случае, это целый API для разработчика, с возможностью выборки данных ...

Читать

Импорт материалов из Instagram

Август 27, 2018 г.

У instagram есть API, который устареет до конца 2018 года. Всех пересаживают на новую платформу -  Instagram Graph API. Регистрация приложения на этой ...

Читать

Регистрация/авторизация в Drupal по учетке в соц.сетях

Май 12, 2013 г.

Самое не приятное, с чем можно встретиться на многих сайтах - это регистрация учетной записи. Неприятное ощущение усиливается ещё и от контраста - везде ...

Читать

Base Auth в PHP

Ноябрь 17, 2022 г.

Рассмотрим здесь вариации с выполнением base auth. Как оказывается из опыта работы с некоторыми API, они не являются эквивалентными. И одна форма запроса может не работать, в то время как другая будет выполняться. Задача следующая - получить содержимое ...

Читать
 

Комментарии к «Urlencode расширенная практика применения»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: