我知道這已在此處討論過。但是,我的情況有點不同,而且我很親密。Php爆炸,然後從MySql表中獲取名稱行
我想爆炸一個新聞數據表中的類別ID數組,然後從類別表中獲取類別名稱。
現在我能夠得到的ID,並在使用爆炸他們就好了新聞數據while循環中:
$post_cats_data = $news_data['cat_id']; // 1,6,7,11
$post_cats_id = explode(",", $post_cats_data);
現在在哪兒,我陷入越來越新聞類別和呼應出名。
$cat_count = count($post_cats_id);
$i = 0;
foreach($post_cats_id as $cat_id){
$cat_qry = mysql_query("SELECT * FROM news_categories WHERE `cat_id` = '$cat_id'") or die(mysql_error());
$cat_title_row = mysql_fetch_row($cat_qry) or die(mysql_error());
$i++;
$write_cat .= $cat_title_row['cat_name'] ;
if($i<$cat_count){
$write_cat .= ', ';
}
}
的想法是,這將得到被爆炸的類別表中的類別名稱,將增加一個逗號後面給大家的結束,但最後一個。我無法獲得類別名稱,當我返回ID時,它通過所有消息的ID進行循環。
我知道這是一個簡單的問題,我只是新的使用循環。
另外,還可以使用'IN'這樣的壓縮你的SQL到一個單一的語句:'$ S = 「SELECT * FROM news_categories WHERE CAT_ID IN($ post_cats_data)」' – leepowers 2009-11-25 00:02:59