この記事は「Cocos2d-x セーブデータをサーバに送信して保存する」の続きになります。
・第1回 : サーバにデータを保存したい理由と全体の流れ
・第2回 : クライアント側の処理とデータ送信(Httpリクエスト)
・第3回 : サーバ側の処理とデータ送信(Httpレスポンス)(ここ)
・第4回 : クライアント側のレスポンス処理
サーバ側の処理とデータ送信(Httpレスポンス)
サーバ側ではJson形式のデータをデコードし、テキストファイルとして保存するまでを処理として記述します。
サーバ側の処理
Jsonデータのデコード
サーバで受信したJsonをphpプログラムで処理できるようにデコードします。
テキストファイルとして保存
デコードしたJsonデータをテキストファイルとしてサーバに保存します。
データ送信(レスポンス)
Jsonデータのデコード、テキストファイルとして保存する処理が完了するとレスポンスが送信されます。
プログラムの実装
<?php /* Jsonデータのデコード */ $json_string = file_get_contents('php://input'); $json_string = mb_convert_encoding($json_string, 'UTF8', 'ASCII,JIS,UTF-8,EUC-JP,SJIS-WIN'); $obj = json_decode($json_string); /* テキストファイルとして保存 */ file_put_contents("savedata.json", json_encode($obj) ,LOCK_EX); ?>
phpプログラムファイルはPHPサーバの任意の場所に置いて下さい。プログラムファイルの配置を変更した場合は、クライアント側のsetUrlも変更する必要があります。
次回は「第4回 : クライアント側のレスポンス処理」です。