2009-08-18 15 views
0

SQLデータベースクエリの出力:間違った私は、次のしている

<?php 
$result = mysql_query("SELECT `category_id` FROM `categories` WHERE `category_parent_id` = '80'"); 
while ($row = mysql_fetch_array($result)){ 
$childrows [] = $row['category_id']; 
$clean = array_unique($childrows); 
$category_string = implode(",",$clean); 
echo $category_string; 
?> 

をそして、この出力:

4747,4847,48,6347,48,63,6447,48,63,64 、6847,48,63,64,68,69

なぜ私は重複を持っているのか、いくつかはカンマが欠けているのですか?

助けてください!

答えて

2

あなたのコードはコンパイルされませんが、それは実際にこれを出力します

47 
47,48 
47,48,63 
47,48,63,64 
47,48,63,64,68 
47,48,63,64,68,69 

改行なし。それを私にビート

<?php 
$result = mysql_query("SELECT DISTINCT `category_id` FROM `categories` WHERE `category_parent_id` = '80'"); 
while ($row = mysql_fetch_array($result)) 
    $childrows [] = $row['category_id']; 
echo implode(",",$childrows) . "\n"; 
?> 
4

ループの回りにエコーしていて、改行がありません。

あなたは改行を持っていた場合には、次のようになります。

 
47 
47,48 
47,48,63 
47,48,63,64 
47,48,63,64,68 
47,48,63,64,68,69 

は今少しより多くの意味を作りますか?あなたは中括弧を閉じていなかったので、

+0

はこれを使用してください! – Quassnoi

関連する問題