http://ruseller.com/lessons.php?rub_id=2&id=1147 РЕЗИНОВОЕ ВИДЕО
http://ruseller.com/lessons/les1177/demo.html AVIATABLO5
http://ruseller.com/lessons.php?rub=2&id=1503 ПОЛЕ ПОИСКА
http://ruseller.com/lessons/les1313/demo/index.html
http://ruseller.com/lessons/les1486/demo/index.html ПОИСК
http://ruseller.com/lessons/les1415/demo/index.html#close ПУПАБЫ
http://ruseller.com/lessons/les1414/demo/index.html ПАРАЛОИД РАЗВОРОТ
http://ruseller.com/lessons/les1377/demo/index2.html ГАРМОЩКА СТАТЕЙ
http://ruseller.com/lessons/les1362/demo/index4.html ПОДСКАЗКИ
http://ruseller.com/lessons/les1320/demo/index.html
http://ruseller.com/lessons/les1312/demo/index.html ТАБЛИЦЫ
http://ruseller.com/lessons/les399/example/index.html
http://ruseller.com/lessons/les1309/demo/index.html# ВХОД
http://ruseller.com/lessons/les1024/index.html КНОПКИ В КЛАСС
http://ruseller.com/lessons/les971/demo/index.html ЗАГРУЗКА
http://ruseller.com/lessons/les314/example.htm ГЕО КАРТА
http://ruseller.com/lessons.php?rub=28&id=1148 HTACCES
http://ruseller.com/lessons.php?rub=28&id=1117
http://ruseller.com/lessons.php?rub=28&id=640 УСКОРЕНИЕ САЙТА
http://ruseller.com/lessons.php?rub=28&id=463
http://ruseller.com/lessons/les455/example/index.html БЫСТРО ПЕЧАТАТЬ
http://ruseller.com/lessons/les246/index.html умная форма
http://ruseller.com/lessons.php?rub_id=37&id=613
догрузка содержания страницы при достижении конца
ПЕРЕХОД ВВЕРЗ СТРАНИЦЫ
http://ruseller.com/lessons.php?rub_id=32&id=1150
http://ruseller.com/lessons.php?rub_id=32&id=405
дргругка расписаний и онлайна фото схем на аякс
http://ruseller.com/lessons.php?rub_id=28&id=364
клавиатура на сайт
http://ruseller.com/lessons.php?rub_id=32&id=360
кликать на статью окно
http://ruseller.com/lessons.php?rub_id=32&id=391
красивая авторизация
http://ruseller.com/lessons/les809/demo/demo.html ПЕРЕЛИСТЫВАНИЕ
http://ruseller.com/lessons.php?rub_id=32&id=998
ПЕРЕТАСКИВАНИЕ БЛОКО В ПХП ДРАГЕН ДРОП
Для чего используется JSON?
Наиболее частое распространенное использование JSON - пересылка данных от сервера к браузеру. Обычно данные JSON доставляются с помощью AJAX, который позволяет обмениваться данными браузеру и серверу без необходимости перегружать страницу.
Пример:
- Пользователь нажимает миниатюру продукта в онлайн магазине.
- JavaScript, выполняющийся на браузере, генерирует запрос AJAX к скрипту PHP, запущенному на сервере, передавая ID выбранного продукта.
- Скрипт PHP получает название продукта, описание, цену и другую информацию из базы данных. Затем составляет из данных строку JSON и отсылает ее браузеру.
- JavaScript, выполняющийся на браузере, получает строку JSON, декодирует ее и выводит информацию о продукте на странице для пользователя.
Также можно использовать JSON для отправки данных от браузера на сервер, передавая строку JSON в качестве параметра запросов GET или POST. Но данный метод имеет меньшее распространение, так как передача данных через запросы AJAX может быть упрощена. Например, ID продукта может быть включен в адрес URL как часть запроса GET.
Библиотека jQuery имеет несколько методов, например, getJSON()
и parseJSON()
, которые упрощают получение данных с помощью JSON через запросы AJAX.
Как создать строку JSON?
Есть несколько основных правил для создания строки JSON:
- Строка JSON содержит либо массив значений, либо объект (ассоциативный массив пар имя/значение).
- Массив заключается в квадратные скобки (
[
и ]
) и содержит разделенный запятой список значений. - Объект заключается в фигурные скобки (
{
и }
) и содержит разделенный запятой список пар имя/значение. - Пара имя/значение состоит из имени поля, заключенного в двойные кавычки, за которым следует двоеточие (
:
) и значение поля. - Значение в массиве или объекте может быть:
- Числом (целым или с плавающей точкой)
- Строкой (в двойных кавычках)
- Логическим значением (
true
или false
) - Другим массивом (заключенным в квадратные скобки)
- Другой объект (заключенный в фигурные скобки)
- Значение
null
Чтобы включить двойные кавычки в строку, нужно использовать обратную косую черту: \"
. Так же, как и во многих языках программирования, можно помещать управляющие символы и шестнадцатеричные коды в строку, предваряя их обратной косой чертой. Смотрите детали на сайте JSON.
Простой пример строки JSON
Ниже приводится пример оформления заказа в формате JSON:
03 | "shopperName" : "Ваня Иванов" , |
04 | "shopperEmail" : "ivanov@example.com" , |
08 | "productName" : "Супер товар" , |
13 | "productName" : "Чудо товар" , |
17 | "orderCompleted" : true |
Рассмотрим строку подробно:
- Мы создаем объект с помощью фигурных скобок (
{
и }
). - В объекте есть несколько пар имя/значение:
"orderID": 12345
- Свойство с именем
"orderId"
и целочисленным значением 12345
"shopperName": "Ваня Иванов"
- свойство с именем
"shopperName"
и строковым значением "Ваня Иванов"
"shopperEmail": "johnsmith@example.com"
- Свойство с именем
"shopperEmail"
и строковым значением "ivanov@example.com"
"contents": [ ... ]
- Свойство с именем
"contents"
, значение которого является массивом "orderCompleted": true
- Свойство с именем
"orderCompleted"
и логическим значением true
- В массиве
"contents"
есть 2 объекта, представляющие отдельные позиции в заказе. Каждый объект содержит 3 свойства: productID
, productName
, и quantity
.
Кстати, так как JSON основан на объявлении объектов JavaScript, то вы можете быстро и просто сделать выше приведенную строку JSON объектом JavaScript:
01 | <script type= "text/javascript" > |
04 | "shopperName" : "Ваня Иванов" , |
05 | "shopperEmail" : "ivanov@example.com" , |
09 | "productName" : "Супер товар" , |
14 | "productName" : "Чудо товар" , |
18 | "orderCompleted" : true |
Сравнение JSON и XML
Во многих отношениях вы можете рассматривать JSON как альтернативу XML, по крайней мере, в сфере веб приложений. Концепция AJAX оригинально основывалась на использовании XML для передачи данных между сервером и браузером. Но в последние годы JSON становится все более популярным для переноса данных AJAX.
Хотя XML является проверенной технологией, которая используется в достаточном количестве приложений, преимуществами JSON являются более компактный и простой для распознавания формат данных.
Вот как будет выглядеть выше приведенный пример объекта на XML:
04 | <number>12345</number> |
07 | <key>shopperName</key> |
08 | <string>Ваня Иванов</string> |
11 | <key>shopperEmail</key> |
12 | <string>ivanov@example.com</string> |
23 | <key>productName</key> |
24 | <string>Супер товар</string> |
37 | <key>productName</key> |
38 | <string>Чудо товар</string> |
48 | <key>orderCompleted</key> |
49 | <boolean> true </boolean> |
Версия XML имеет существенно больший размер. В действительности она имеет длину 1128 символов, а вариант JSON - только 323 символа. Версию XML также достаточно трудно воспринимать.
Конечно, это радикальный пример. И возможно создать более компактную запись XML. Но даже она будет существенно длиннее эквивалента на JSON.
Работаем со строкой JSON в JavaScript
JSON имеет простой формат, но создавать строку JSON вручную достаточно утомительно. Кроме того, часто нужно взять строку JSON, конвертировать ее содержание в переменную, которую можно будет использовать в коде.
Большинство языков программирования имеют инструменты для простого преобразования переменных в строки JSON и наоборот.
Создаем строку JSON из переменной
JavaScript имеет встроенный метод JSON.stringify()
, который берет переменную и возвращает строку JSON, представляющую ее содержание. Например, создадим объект JavaScript, который содержит сведения о заказе из нашего примера, а затем создадим из него строку JSON:
01 | <script type= "text/javascript" > |
05 | "shopperName" : "Ваня Иванов" , |
06 | "shopperEmail" : "ivanov@example.com" , |
10 | "productName" : "Супер товар" , |
15 | "productName" : "Чудо товар" , |
19 | "orderCompleted" : true |
22 | alert ( JSON.stringify( cart ) ); |
Данный код выдаст:
1 | { "orderID" :12345, "shopperName" : "Ваня Иванов" , "shopperEmail" : "ivanov@example.com" , "contents" :[{ "productID" :34, "productName" : "Супер товар" , "quantity" :1},{ "productID" :56, "productName" : "Чудо товар" , "quantity" :3}], "orderCompleted" : true } |
Обратите внимание, что метод JSON.stringify()
возвращает строку JSON без пробелов. Ее сложнее читать, но зато она более компактна для передачи через сеть.
Создаем переменную из строки JSON
Существует несколько способов разобрать строку JSON в JavaScript, но самый безопасный и надежный - использовать встроенный метод JSON.parse()
. Он получает строку JSON и возвращает объект или массив JavaScript, который содержит данные. Например:
01 | <script type= "text/javascript" > |
06 | "shopperName" : "Ваня Иванов" , \ |
07 | "shopperEmail" : "ivanov@example.com" , \ |
11 | "productName" : "Супер товар" , \ |
16 | "productName" : "Чудо товар" , \ |
20 | "orderCompleted" : true \ |
24 | var cart = JSON.parse ( jsonString ); |
26 | alert ( cart.shopperEmail ); |
27 | alert ( cart.contents[1].productName ); |
Мы создали переменную jsonString
, которая содержит строку JSON нашего примера с заказом. Затем мы передаем данную строку методу JSON.parse()
, который создает объект, содержащий данные JSON и сохраняет его в переменной cart
. Остается только осуществить проверку, выведя свойства объекта shopperEmail
и productName
массива contents
.
В результате мы получим следующий вывод:
В реальном приложении ваш JavaScript код будет получать заказ в виде строки JSON в AJAX ответе от скрипта сервера, передавать строку методу JSON.parse()
, а затем использовать данные для отображения на странице пользователя.
JSON.stringify()
и JSON.parse()
имеют другие возможности, такие как использование возвратных функций для пользовательской конвертации определённых данных. Такие опции очень удобны для конвертации различных данных в правильные объекты JavaScript.
Работаем со строкой JSON в PHP
PHP, как и JavaScript, имеет встроенные функции для работы с JSON строками.
Создаем строку JSON из переменной PHP
Функция json_encode()
принимает переменную PHP и возвращает строку JSON, представляющую содержание переменной. Вот наш пример с заказом, написанный на PHP:
04 | "shopperName" => "Ваня Иванов" , |
05 | "shopperEmail" => "ivanov@example.com" , |
09 | "productName" => "Супер товар" ,Продолжение »
|
FTP клиент FileZilla скачать
соц сети вк fb жжж
Хост ****3ru.162.com1.ru
https://panel162.agava.net/ myAdmin
Лог ****3r24
пас hi2Ladous
БД
localhost
****3r24
пор **********
таб ****3r24_data
Личный кабинет: http://clients.agava.ru
логин: io*** пароль: ******
d*** 114Mvurc4F
**********ovitsinAlexander
EdPsFo6AhRntP9sLgBGr
pa.*****creditov.ru
c******** iNhbiP44NRuealNELqYi
http://partners.prbbval.ru - NpCovyco lead******tem
|