Реализация кредитов Facebook - Callback.php - PullRequest
0 голосов
/ 22 января 2012

Я пытаюсь внедрить кредиты Facebook в свое приложение, сейчас я хочу продать две вещи, одна - зелье для восстановления здоровья пользователей, а другая - зелье для восстановления силы пользователей.

До сих пор я использовал следующий Javascript для запроса оплаты:

function placeOrder() {

        // Assign an internal ID that points to a database record
        var order_info = '1potion';

        // calling the API ...
        var obj = {
          method: 'pay',
          order_info: order_info,
          purchase_type: 'item',
          dev_purchase_params: {'oscif': true}
        };

        FB.ui(obj, callback);
      }

      var callback = function(data) {
        if (data['order_id']) {
          return true;
        } else {
          //handle errors here
          return false;
        }
      };     
      </script>

Пока все хорошо ... Теперь обсудим файл callback.php ...

Из того, что я прочитал, у меня должно быть что-то типа "выбрать * из магазина, где продукт = 1 пункт" и получить информацию о продукте? Это правильно, потому что, когда я попробовал это, я только что получил сообщение об ошибке «возникла проблема с этой транзакцией, с которой вы не списали средства».

Поэтому я сейчас использую:

 if ($item_info == "1potion") {

      // Per the credits api documentation, you should pass in an item 
      // reference and then query your internal DB for the proper 
      // information. Then set the item information here to be 
      // returned to facebook then shown to the user for confirmation.
      $item['title'] = 'Will Potion';
      $item['price'] = 15;
      $item['description'] = 'This is a potion which can be used to fully restore your will stat!';
      $item['image_url'] = 'http://www.midcitymafia.com/images/potion.jpg';
      $item['product_url'] = 'http://www.midcitymafia.com/images/potion.jpg';

Пока все работает нормально, я просто застрял в том, куда я помещаю код для выдачи пользователю продукта, я исследовал, и мне кажется, что мне нужно реализовать код для выпуска продукта под:

if ($status == 'placed') {
  $next_state = 'settled';
  $data['content']['status'] = $next_state;
          }

Но какую переменную я должен использовать, чтобы определить, какой продукт на самом деле купил пользователь ... Чтобы убедиться, что он получает нужный товар.

Заранее спасибо,

Джек.

...