2012-01-21 14 views
0

私はPHPファイルで.jsonファイル形式を生成したいと思います。それのために私は次のコードを書く。は、PHPを使用してjson形式を生成します

<?php 
$res=array(); 
$response = array(); 
$con=mysql_connect("localhost","root",""); 
if(!$con){ 
die("connection failed".mysql_error()); 
} 
$db=mysql_select_db("companies",$con); 
if(!$db){ 
die("connection failed".mysql_error()); 
} 
$result = mysql_query("SELECT * FROM companies"); 

while($row = mysql_fetch_array($result)) { 
$res[]=array('name'=> $row['name'],'id' => $row['company_id']+1); 
} 
mysql_close($con); 
$response['company'] = $res; 
echo (json_encode($response)); 
?> 

それは、このような出力が得られます。

{"company":[{"name":"abc","id":2},{"name":"cde","id":3}]} 

しかし、私はこのような出力たい:

[{"company":{"name":"abc","id":1}},{"company":{"name":"cde","id":2}}] 

どのように私は私のPHPファイルを変更する必要がありますか?

+0

上記の出力をどのようにしたいのですか? –

答えて

0

あなたが1つのより多くの連想配列が必要です。

while($row = mysql_fetch_array($result)) { 
    $res[] = array(
     'company' => array('name'=> $row['name'],'id' => $row['company_id']+1) 
    ); 
} 

をそして今、あなたが送信する必要があり、すべては$resエンコードされたJSONがあります。

+0

答えのためのThanx、私は "http://localhost/project/companies.json"と私のブラウザで見るとデータを表示します。しかし私はデータを隠したい。私はそれをすることができますか?はいの場合、どうですか? –

+0

このデータをJavaScriptで使用し、AJAXリクエストで取得している場合は、そのデータを非表示にすることはできません。 –

+0

Thanx。いいえ、私はRubyファイルからこれらのデータにアクセスしようとしています。これらのデータを隠すことはできますか? –

関連する問題