显示结果并隐藏重复项

时间:2013-07-19 18:29:23

标签: php mysql content-management-system

我在 THIS PAGE 底部找到了一个catagores列表

此代码:

<?php

include_once('include/article.php');


$article = new article;
$articles = $article->fetch_all();

?>



    <?php foreach ($articles as $article) { ?>

 <div id="content">        
<a href="list.php?id=<?php echo $article['promo_cat']; ?>">
<li class="button"><ul class="pageitem">
<?php echo $article['promo_cat']; ?>
</li></ul></div>
          </a>

 <?php } ?>

在我的mysql表中以列表形式显示promo_cat字段的值:

你可以看到

有2个“免费”字段。如何编辑此代码以使其不显示任何重复项?

我知道我需要使用DISTINCT功能,但我不知道如何使用。请帮忙。

谢谢。

如果您需要更多来自其他页面的coe,请询问,我将编辑此帖并添加。

2 个答案:

答案 0 :(得分:3)

SELECT DISTINCT `promo_cat` FROM mobi WHERE `something`  = 'something'

来自DISTINCT

http://forums.mysql.com/的更多信息

答案 1 :(得分:1)

供将来参考。

将我的上述代码更改为:

<?php

include_once('include/article.php');


$category = new category;
$articles = $category->fetch_all();

?>



    <?php foreach ($articles as $article) { ?>

 <div id="content">        
<a href="list.php?id=<?php echo $article['promo_cat']; ?>">
<li class="button"><ul class="pageitem">
<?php echo $article['promo_cat']; ?>
</li></ul></div>
          </a>

 <?php } ?>

并在我的/include/article.php中添加了一个新的CLASS:

class category {
public function fetch_all(){
    global $pdo;
      $query = $pdo->prepare("SELECT DISTINCT `promo_cat` FROM mobi");
      $query->execute();
return $query->fetchAll();
              }

public function fetch_data($promo_cat) {
   global $pdo;

 $query = $pdo->prepare("SELECT DISTINCT * FROM mobi WHERE `something`  = 'something'");
  $query->bindValue(1, $promo_cat);
   $query->execute();

return $query->fetch(); 

}

}

解决了我的问题。

谢谢你。