AJAX. JSON. ReCAPTCHA.
JSON
JSON (англ. JavaScript Object Notation, представление объектов JavaScript) - текстовый формат обмена данными, основанный на JavaScript. Как и многие другие текстовые форматы, JSON легко читается людьми. Формат JSON был разработан Дугласом Крокфордом.

JSON - текстовый формат, полностью независимый от языка реализации, но он использует соглашения, знакомые программистам C-подобных языков, таких как C, C++, C#, Java, JavaScript, Perl, Python и многих других. Эти свойства делают JSON идеальным языком обмена данными.
Наиболее частое распространенное использование JSON - пересылка данных от сервера к браузеру. Обычно данные JSON доставляются с помощью AJAX, который позволяет обмениваться данными браузеру и серверу без необходимости перезагружать страницу.
Поскольку формат JSON является подмножеством синтаксиса языка JavaScript, то он может быть быстро десериализован встроенной функцией eval(). Кроме того, возможна вставка вполне работоспособных JavaScript-функций. В языке PHP, начиная с версии 5.2.0, поддержка JSON включена в ядро в виде функций json_decode() и json_encode(), которые сами преобразуют типы данных JSON в соответствующие типы PHP и наоборот.
JSON основан на двух структурах данных:
- Коллекция пар ключ/значение. В разных языках, эта концепция реализована как объект, запись, структура, словарь, хэш, именованный список или ассоциативный массив.
- Упорядоченный список значений. В большинстве языков это реализовано как массив, вектор, список или последовательность.
В нотации JSON это выглядит так:
Объект - неупорядоченный набор пар ключ/значение. Объект начинается с { (открывающей фигурной скобки) и заканчивается } (закрывающей фигурной скобкой). Каждое имя сопровождается : (двоеточием), пары ключ/значение разделяются , (запятой).
Ключ описывается строкой

Массив - упорядоченная коллекция значений. Массив начинается с [ (открывающей квадратной скобки) и заканчивается ] (закрывающей квадратной скобкой). Значения разделены , (запятой).

Значение может быть строкой в двойных кавычках, числом, true, false, null, объектом или массивом. Эти структуры могут быть вложенными.

Строка - это упорядоченное множество из нуля или более символов Unicode, заключенная в двойные кавычки, используя \ (обратную косую черту) в качестве символа экранирования. Символ представляется как односимвольная строка. Похожий синтаксис используется в C и Java.

Число представляется так же, как в C или Java, кроме того, что используется только десятичная система счисления.

{
"firstName": "Иван",
"lastName": "Иванов",
"age" : 36,
"address": {
"streetAddress": "Московское ш., 101, кв.101",
"city": "Ленинград",
"postalCode": "101101"
},
"phoneNumbers": [
"812 123-1234",
"916 123-4567"
]
}
JSON.parse()
Парсинг JSON, т.е. перевод строки JSON в объект JavaScript
JSON.stringify()
Перевод объекта JavaScript в строку JSON. Данный метод осуществляет действие обратное методу JSON.parse().
Пример 1. Преобразование объекта в JSON
Пример 2. Преобразование JSON в объект
Пример 3. Обмен данными между сервером и клиентом
json_encode
Возвращает строку, содержащую JSON-представление.
json_decode
Принимает закодированную в JSON строку и преобразует ее в переменную PHP.
ReCAPTCHA

reCAPTCHA
— система, разработанная для защиты веб-сайтов от интернет-ботов и одновременной помощи в оцифровке текстов книг.
Для начала необходимо добавить reCAPTCHA API key.
Жмём на кнопку My reCAPTCHA

Далее процесс авторизации. Необходимо иметь почтовый ящик от Google

После чего происходит перенаправление на панель администрирования. Панель администрирования отображает список используемых "каптч", а так же находится форма для созданий новой "каптчи". В данном примере(в списке сверху) уже есть reCAPTCHA, которая используется.


Создадим новую "каптчу". Заполняем поля формы. Название можно задать любое. И выберем вторую версию "каптчи".

Теперь пожалуй самое главное. В писке Домены необходимо указать для доменое имя сайта на котором будет использоваться создаваемая "каптча"(либо список доменов).
localhost
- это своего рода тоже доменое имя и его разрешено использовать, как в принципе и другие имена, которыми Вы привыкли назвать ваши проекты в OpenServer. Самое главное чтобы имя не нарушало правило именовая доменов.

Ставим галочку в поле согласия с условиями использования reCAPTCHA. И жмём на регистрацию.
В результате нас перенаправять на страницу с информацией о вновь созданой "каптчи". Данная страница содержит статистику использования "каптчи" и информацию по добавлению её на Ваш сайт.

