Работа с JSON на AS3 и PHP

Только готовые уроки по использованию ВКонтакте API. Flash + PHP + API. НЕ IFrame!

Работа с JSON на AS3 и PHP

Сообщение sasha^ » 07 мар 2013, 14:47

Отправка данных и получение ответа в формате JSON на AS3 и PHP

В этом уроке я научу вас работать с очень удобным форматом JSON для отправки-получения информации.

Что такое JSON и с чем его едят найдете здесь - http://ru.wikipedia.org/wiki/JSON

Мой первый урок кстати :)

Программирование на Action Script 3 в среде Adobe Flash CS5(у меня эта версия).
Программирование на PHP, можно в чем угодно, даже блокноте, но советую notepad++(удобнее).

Нам понадобится сервер с поддержкой PHP.

Серверная часть
1.Создаем новый php-файл.
Можно даже в блокноте написать код ниже.
  1. <?php
  2. $test = $_POST['test']; // здесь наша переменная test из флеш
  3. $name = "Sasha"; // переменная с именем
  4. $energy = 200 + intval($test); // переменная с енергией увеличенной на 200
  5. echo json_encode(array("name"=>$name,"energy"=>$energy)); //кодируем в json и отдаем результат
  6. ?>


Сохраняем как test.php

Весь код прокомментирован. Если непонятно - задавайте вопросы в теме...

2.Если вы не создавали и не заливали файл crossdomain.xml на свой хост, тогда открываем блокнот и пишем код ниже.
  1. <cross-domain-policy>
  2. <allow-access-from domain="*.userapi.com"/>
  3. <allow-access-from domain="*.vk.me"/>
  4. <allow-access-from domain="*.vkontakte.ru"/>
  5. <allow-access-from domain="*.vk.com"/>
  6. </cross-domain-policy>


сохраним как crossdomain.xml

3. Загружаем файлы на сервер
test.php заливаем в любой каталог, а crossdomain.xml в корневой каталог.


Приложение
1.Создаем новый документ AS3 и файл Main.as (сохраняем в одной папке оба) и связываем их
Выбираем вкладку с первым созданным документом, кликаем на пустом месте, чтобы снять выделение с текстового поля, и в PROPERTIES устанавливаем Class "Main" - созданный ранее as файл.
Изображение

2. В файл Main.as в блокноте (можно и в другом текстовом редакторе) пишем код (файл должен быть в utf-8 чтобы корректно отображался русский текст):
  1. package {
  2.     import flash.net.*;
  3.     import flash.events.*;
  4.     import flash.display.*;
  5.     import com.adobe.serialization.json.JSON;
  6.     import flash.text.TextField;
  7.     public class Main extends Sprite {
  8.     public function Main():void {
  9.             var loader:URLLoader = new URLLoader();
  10.             var request:URLRequest=new URLRequest("http://mister01.com/test.php"); // здесь вписать нужный адрес
  11.             request.method=URLRequestMethod.POST;
  12.             var vars:URLVariables = new URLVariables();
  13.             vars['test']="100"; //отправляем переменную тест
  14.             request.data=vars;
  15.             loader.addEventListener(Event.COMPLETE, onComplete); //функция которая сработает после отправки запроса
  16.             loader.load(request);
  17.             function onComplete(event:Event):void {
  18.                var test:Object = JSON.decode(loader.data); //определяем объект test в котором декодированный json
  19.                var labl:TextField = new TextField(); //создаем новое текстовое поле
  20.                labl.width = labl.height = 200; // определяем высоту и ширину
  21.                labl.x = labl.y = 50; //определяем позицию на сцене
  22.                addChild(labl); //добавляем в список отображения
  23.                labl.text='Имя: ' + test.name + ' Энергия:  ' + test.energy; //выводим данные
  24.             }
  25.         }
  26.     }
  27. }


3. В Main.as у нас импортирован com.adobe.serialization.json.JSON, но его нет по умолчанию, поэтому нам нужно создать
качаем архив отсюда: Чтобы увидеть ссылку - зарегистрируйтесь.
там есть и другие файлы, но нам нужна только папка com, которую бросаем в папку с Main.as и файлом проекта и все.

4. Создаём swf файл и загружаем его в контакт.

5. Проверяем настройки приложения.
Контейнер приложения: Без использования контейнера.

6. Смотрим на результат работы ;)
Последний раз редактировалось sasha^ 07 мар 2013, 15:08, всего редактировалось 4 раз(а).

За это сообщение автора sasha^ поблагодарили - 3:
Garch, kolyan9898, Грачик
sasha^

 
Автор темы
Сообщения: 711
Зарегистрирован: 10 сен 2012, 16:52
Благодарил (а): 1 раз.
Поблагодарили: 136 раз.

Чтобы убрать блок с рекламой, зарегистрируйтесь на форуме или войдите.

Google
 



Re: Работа с JSON на AS3 и PHP

Сообщение Грачик » 07 мар 2013, 14:56

Спасибо.Очень полезно.
Грачик

 
Сообщения: 162
Зарегистрирован: 08 фев 2013, 16:04
Благодарил (а): 21 раз.
Поблагодарили: 1 раз.

Re: Работа с JSON на AS3 и PHP

Сообщение kolyan9898 » 07 мар 2013, 16:14

Молодец! полезно +тебе :D
kolyan9898

 
Сообщения: 22
Зарегистрирован: 27 авг 2012, 19:12
Благодарил (а): 3 раз.
Поблагодарили: 0 раз.


Вернуться в Уроки по использованию ВКонтакте API



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0

cron