Работа с Payments API.(as3,php)

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

Re: Работа с Payments API.(as3,php)

Сообщение DDer » 14 апр 2013, 22:37

Я думаю так . Достаточно хранить только order_id, больше ничего не нужно придумывать :D - дал монет = записал order_id куда угодно только его и все = перед тем как давать монеты проверил есть ли такой order_id записанный ранние.
Примерно так:
  1.  
  2. $result = mysql_query("SELECT * FROM $table_name WHERE orders='$order_id'");// Выбираем все поля где поле orders равно $order_id
  3. $myrow = mysql_fetch_array($result);//все это в массив...
  4. if($myrow){
  5. //Если нашлось то- ничего не делаем :D
  6. }else{
  7. //Если нет- даем монет и записываем что мы давали уже, с помощью order_id на то они его и придумали :D
  8. result = "UPDATE $table_name2 SET money='$addmoney' WHERE idvk='$receiver_id'";
  9. result = "INSERT INTO $table_name (order) VALUES ('$order_id')";
  10. }
  11.  
  12.  

Могут быть ошибки, но суть вроде передана ;)
Вопрос у меня такой: Сколько хранить эти ордера в своей базе? Спасибо.
DDer

 
Сообщения: 31
Зарегистрирован: 14 апр 2013, 21:11
Благодарил (а): 5 раз.
Поблагодарили: 7 раз.

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

Google
 



Re: Работа с Payments API.(as3,php)

Сообщение Апчхи » 30 сен 2013, 17:26

Для меня этот пример удивителен тем, что он заработал сразу и без ошибок) Но есть вопрос:
Вот у меня игра (весьма масштабная), но написана в кадрах. И за задумкой, этот код должен быть в двох разных кадрах. Можно ли это как-то организовать?
Апчхи

 
Сообщения: 79
Зарегистрирован: 26 авг 2013, 23:12
Благодарил (а): 14 раз.
Поблагодарили: 0 раз.

Re: Работа с Payments API.(as3,php)

Сообщение 112 » 30 сен 2013, 18:31

Апчхи

Апчхи писал(а):И за задумкой, этот код должен быть в двох разных кадрах. Можно ли это как-то организовать?


Я думаю ,что нет,по крайне мере у меня даже не получилось разбросать код на несколько слоёв ,но вы можете попробовать может у вас и получится ;)
Если ты дебил ,оставайся им!
Я бы изменил мир,но Бог не дает исходники!
Изображение
Аватара пользователя
112
Модератор
Модератор
 
Автор темы
Сообщения: 2215
Зарегистрирован: 02 фев 2010, 21:53
Благодарил (а): 51 раз.
Поблагодарили: 80 раз.

Re: Работа с Payments API.(as3,php)

Сообщение Апчхи » 30 сен 2013, 18:32

Оло-ло! В кадрах, обычно, если объявляеш переменную, а в другом с ней что-то делаеш, то не работает (или вообще не компилируеться). А тут... это не действует!! Можете пояснить почему и как так? Есть смутные догадки, что это потому что извне взаимодействие идёт, но хотелось бы услышать мнение профессионала.
Апчхи

 
Сообщения: 79
Зарегистрирован: 26 авг 2013, 23:12
Благодарил (а): 14 раз.
Поблагодарили: 0 раз.

Re: Работа с Payments API.(as3,php)

Сообщение Апчхи » 30 сен 2013, 18:35

И как человек, у которого всё получилось, пишу:
Кадр 1:
  1. import flash.display.Sprite;
  2. import flash.events.*;
  3. import vk.APIConnection;
  4. import vk.events.*;
  5.  //Переменные
  6.              var api_id:Number;
  7.              var viewer_id:Number;
  8.              var sid:String;
  9.              var secret:String;
  10. //Заполняем переменные данными
  11. var flashVars:Object = stage.loaderInfo.parameters as Object;
  12. api_id = flashVars['api_id'];
  13. viewer_id = flashVars['viewer_id'];
  14. sid = flashVars['sid'];
  15. secret = flashVars['secret'];
  16.  
  17. var VK:APIConnection = new APIConnection(flashVars);
  18.  


Кадр 2(и тут текстовое поле и кнопку):
  1. stop();
  2.  
  3. VK.api('getProfiles', { uids: flashVars['viewer_id']}, onProfileLoaded, onError);//Узнаем имя и фамилию пользователя
  4.        
  5. function onProfileLoaded(data: Object):void{
  6. result_tf.text ='Привет ' + data[0]['first_name'] + ' ' + data[0]['last_name'] + ' ,это тестовое приложение в котором показан пример работы с payments Api';
  7. }
  8. //добавляем три слушателя событии
  9. VK.addEventListener('onOrderSuccess', onSuccess); //если все прошло удачно
  10. VK.addEventListener('onOrderCancel', onCanc); //если пользователь отменил передачу
  11. VK.addEventListener('onOrderFail', onError); //если произошла ошибка
  12.            
  13. votes_er.addEventListener(MouseEvent.CLICK, function(event:MouseEvent) { //надатие на кнопку
  14. VK.callMethod('showOrderBox', { type:'item',item:'item1'});//вызов окна перевода голосов ;type:'item' - окно покупки товара(возможно также окно вызова офферов или окно пополнения голосов),item:'item1'- номер товара
  15. })
  16. //три функции ,которые срабатывают при :
  17. //удачнои покупки
  18.         function onSuccess(data: Object):void
  19.         {
  20.             result_tf.text = "Голоса переведены";
  21.         }
  22. //при отмене      
  23.         function onCanc(data: Object):void
  24.         {
  25.             result_tf.text = "Вы отменили перевод";
  26.         }
  27. //при ошибке
  28.          function onError(data: Object):void
  29.         {
  30.             result_tf.text = data.error_msg;
  31.         }
  32.  
  33.  
Апчхи

 
Сообщения: 79
Зарегистрирован: 26 авг 2013, 23:12
Благодарил (а): 14 раз.
Поблагодарили: 0 раз.

Re: Работа с Payments API.(as3,php)

Сообщение sasha^ » 30 сен 2013, 22:15

намного лучше писать в классах...=)
вот кстати моя функция для локального теста и для залитого на хост...
и да, getProfiles лучше не использовать... она просто для совместимости существует...
  1. public var api_id:String;
  2. public var viewer_id:String;
  3. public var sid:String;
  4. public var secret:String;
  5. public var auth_key:String;
  6. public var flashVars:Object;
  7.  
  8. public var VK:APIConnection;
  9. //....код....
  10. private function setFlashVars():void {
  11.     flashVars = this.stage.loaderInfo.parameters as Object;
  12.     if(!flashVars["api_id"]) { // для локального теста...
  13.         flashVars["api_id"] = "xxx";
  14.         flashVars["viewer_id"] = "xxx";
  15.         flashVars["sid"] = "xxx";
  16.         flashVars["secret"] = "xxx";
  17.         flashVars["auth_key"] = "xxx";
  18.     }
  19.     api_id = flashVars["api_id"];
  20.     viewer_id = flashVars["viewer_id"];
  21.     sid = flashVars["sid"];
  22.     secret = flashVars["secret"];
  23.     auth_key = flashVars["auth_key"];
  24. }
  25. //.....код.....
  26. VK = new APIConnection(flashVars); // создаем класс вк
sasha^

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

Re: Работа с Payments API.(as3,php)

Сообщение annechko » 28 июн 2015, 21:50

А здесь еще кто-нибудь есть? актуально еще спросить кого-то? не могу разобраться с ошибкой :cry:
annechko

 
Сообщения: 7
Зарегистрирован: 28 июн 2015, 21:38
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.

Re: Работа с Payments API.(as3,php)

Сообщение alexandr_ratush » 29 июн 2015, 00:26

Есть конечно, спрашивайте.
Аватара пользователя
alexandr_ratush

 
Сообщения: 94
Зарегистрирован: 05 мар 2014, 21:47
Откуда: Ukraine
Благодарил (а): 2 раз.
Поблагодарили: 25 раз.

Re: Работа с Payments API.(as3,php)

Сообщение annechko » 01 июл 2015, 13:39

и как это обычно бывает, как только напишешь на форуме - все сразу само начинает работать :)
annechko

 
Сообщения: 7
Зарегистрирован: 28 июн 2015, 21:38
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.

Re: Работа с Payments API.(as3,php)

Сообщение annechko » 01 июл 2015, 23:51

а подскажите, пожалуйста, как поступить, если нужно в отдельном классе все это организовать? Вот, например, есть отдельный класс, там прописан внешний вид окошка с кучками золота (эти кучки играют роль кнопок), так вот когда пытаюсь добавить в этот класс данный код, выходит что stage теперь нужно передавать как аргумент при создании класса? выдает ошибки и после сборки просто пустое окно, там не создаются больше тот интерфейс с кучками..помогите, пожалуйста
annechko

 
Сообщения: 7
Зарегистрирован: 28 июн 2015, 21:38
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.

Пред.След.

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



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

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

cron