2012-03-30 13 views
0

私はそのコンテンツのRSSフィードが必要なmysqlデータベースを持っています。 私はJSONで、この同等の必要:任意の助けとしてjsonからのmysqlの結果

答えて

1
while ($row = mysql_fetch_assoc($result)) { 
    $json[] = $row; 
} 

echo json_encode($json); 
+0

最適です。ご協力いただきありがとうございます –

1

をいただければ幸いです

<?php 

$host="localhost"; 
$username="username"; 
$password="password"; 
$db_name="mydb"; 

$con=mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB"); 
$sql = "select date, title, description, url from blah where type = 'OFFERS' order by ref desc"; 
$result = mysql_query($sql); 
$json = array(); 
if(mysql_num_rows($result)){ 
while($row=mysql_fetch_row($result)){ 
$json['title'][]=$row; 
} 
} 

mysql_close($db_name); 

echo json_encode($json); 

?> 

:私は仕事に得ることができる最も近いものがこれです、これまで

mysql_select_db("mydb", $con); 
$result = mysql_query("select date, title, description, url from blah where type = 'OFFERS' order by ref desc"); 

echo '<?xml version="1.0"?> 
<rss version="2.0"> 
<channel> 

<title></title> 
<description></description> 
<link></link>'; 

while($row = mysql_fetch_array($result)) 
    { 
    echo " 
    <item> 
    <title>" . $row['title'] . "</title> 
    <description>" . $row['description'] . "</description> 
    <link>" . $row['url'] . "</link> 
    <image>" . $row['date'] . "</image> 
    </item>"; 
    } 

をmysql_fetch_rowは両方の配列キーを返し、mysql_fetch_assocを使用するためにインデックスを作成します。これはキーだけを返します。

また、タイトルではなくアイテムを取得しています。したがって$json['title']の代わりに$json['items']を使用してください。

さらに、rssには他にも情報があります。 $jsonに追加することもできます。

結果のコードは、

$json=array(); 
$json['title'] = 'My JS/RSS'; 
$json['link'] = "http://". $_SERVER['HTTP_HOST']. $_SERVER["REQUEST_URI"]; 
$json['description'] = ""; 
$json['itmes'] = array(); 
while($row=mysql_fetch_assoc($result)){ 
    $json['items'][]=$row; 
}