2011-02-08 16 views
0

出力からすべてのゲーマータグを取得し、それをmysqlテーブルに挿入する方法がわかりません。ゲーム履歴ページからすべてのゲーマータグを挿入していますか?

これは私が今までに持っているものです。コメントを読んでください...ありがとう!

<?php 
//gameID 
$gameid = "469547013"; 
//key to access api 
$apikey = "30cRxVA9J73esG388CzmOXUVRo5VjYhSfI2qBaqcMzs="; 

$url = "http://www.bungie.net/api/reach/reachapijson.svc/game/details/".$apikey."/".$gameid.""; 
$output = file_get_contents($url); 

$obj = json_decode($output); 

//output 
print_r($output); 

//json_decoded output 
print_r($obj); 

//Having a hard time getting a single gamertag 
print $obj->GameDetails->Players->PlayerDetail[0]->gamertag; 

//I guess there needs to be an array or arrays here 
$result = ????????????; 

while ($tag = $result) { 
//value 
$tag = $array['gamertag']; 

//insert each gamertag into table 
mysql_connect('localhost', '', '') or die('Error connecting to MySQL'); 
mysql_select_db(''); 
mysql_query("INSERT IGNORE INTO gamertags(gamertag)VALUES ('".$tag."')"); 

} 

?> 
+1

APIキーを誰にも公開するのではなく、サンプルデータを貼り付けるのはどうですか? – drudge

+0

出力は投稿の制限を超えており、サイトからリンクしたくありません。鍵は変更されます... – AndrewFerrara

答えて

2

チェックこのアウト:

$output = file_get_contents('http://www.bungie.net/api/reach/reachapijson.svc/game/details/30cRxVA9J73esG388CzmOXUVRo5VjYhSfI2qBaqcMzs=/469547013'); 
$output = json_decode($output); 
foreach($output->GameDetails->Players as $player) { 
    echo $player->PlayerDetail->gamertag . '<br />'; 
} 

編集http://dbug.ospinto.com/を見てみましょう。私はそれをデコードされたjsonを通して私は正確に私が必要なものを得る方法を教えてくれました。

print $obj->GameDetails->Players[0]->PlayerDetail->gamertag; 

だから、あなたがループしたいと思うPlayers配列を通って、各タグを取得する:あなたはこのような何かをお勧めしますので、

+0

Do I?私はAPIの文字列にjson_decode()を使用しているので、デコードされたjsonと仮定します。しかし、私は間違っているかもしれない。 –

+0

申し訳ありませんが、私はもう少しそれを読むまでdbugが何をするのか分かりませんでした。私はそれがjsonオブジェクトを見るためだと思っていました。うわー! –

0

プレイヤーは、配列です。このようなもの:

$ary = new Array(); 
foreach($obj->GameDetails->Players as $player) { 
    $ary[] = $player->PlayerDetail->gamertag; 
} 
関連する問題