ただの適当な開発記

会社勤めしつつUnityでアプリ作ってる人の雑記

Unityからサーバー(php)へポスト

unityとサーバ間の連携について、unity→phpへ情報をポストする流れをまとめておきます。

unityのhierarchyはこんな感じです。
f:id:cocokyoro:20140705160840p:plain

画面はこうなってます。NGUIのボタンだけが付いてる状態です。
f:id:cocokyoro:20140705161134p:plain

このボタンにはButtonManagerというスクリプトがAddComponentで付けられてます。

ButtonManager.cs

public void OnClickButton(){
	//Connectコルーチンの実行
	StartCoroutine (Connect());
}
private IEnumerator Connect(){
	string url = "http://localhost:80/unity_text.php";

	//WWWForm:WWWクラスを使用してwebサーバにポストするフォームデータを生成するヘルパークラス
	WWWForm wwwForm = new WWWForm();

	//AddFieldでfieldに値を格納                
	wwwForm.AddField ("text","テキストだよー");

	//WWWオブジェクトにURL,WWWFormをセットすることでPOST,GETを行える。
	WWW www = new WWW(url,wwwForm);

	//実行
	yield return www;
}

apache上に配置
unity_text.php

<?php
$text = $_POST['text'];
$fno = fopen("test.txt",'a');
fwrite($fno,$text);
fclose($fno);
?>

text.txt
f:id:cocokyoro:20140705164636p:plain

無事に値が送られています。