喵喵笨兔 の 喵喵的家~遊戲天地 - 首頁(上版面)
喵喵笨兔 の 喵喵的家~遊戲天地 - 首頁(左版面)
首  頁 最新消息 遊戲攻略 遊戲影片 遊戲圖片 下載區 學習分享 留言板 FB粉絲團
 喵喵笨兔 の 喵喵的家~遊戲天地 - PHP 網頁讀取 MySQL 資料庫,篩選欄位內不重覆的資料 SELECT DISTINCT

PHP 網頁讀取 MySQL 資料庫,篩選欄位內不重覆的資料 SELECT DISTINCT

PHP 網頁讀取 MySQL 資料庫,篩選欄位內不重覆的資料

運用 SQL 指令即可篩選欄位內不重覆的資料:

  • SELECT DISTINCT 欄位名 FROM 表格名;

範例程式碼:直接以程式碼來說明唄!主要為紅色字部份

 以笨兔網站的 MySQL 資料庫,撈取【學習分享】的資料來做展示,範例設定的 MySQL 相關名稱如下。MySQL 連線部份,可參考笨兔另一篇隨手筆記【db_002】PHP 連接 MySQL 資料庫

  • 伺服器名稱: localhost
  • 使用者帳號: root
  • 使用者密碼: 12345678
  • 資料庫名稱: pcgame
  • 資料表名稱: learn
  • 資料表欄位名稱: l_id、l_date、l_sort、l_number、l_description、l_url 共有6個欄位

 原始資料列表點擊觀看,這裡是以篩選分類(資料表欄位名l_sort) 欄位內不重覆資料,來做成一個下拉式選單為例。

<?php  //MySQL 函數寫法
  $dbhost = 'localhost'; 
  $dbuser = 'root';
  $dbpass = '12345678';
  $dbname = 'pcgame';
  $conn = mysql_connect($dbhost, $dbuser, $dbpass) or die('Error with MySQL connect') ; 
  mysql_query("SET NAMES 'UTF8'"); 
  mysql_select_db($dbname);

 //DISTINCT 篩選欄位內不重覆之資料
  $sql = 'SELECT DISTINCT l_sort FROM learn';
$result = mysql_query($sql) or die('MySQL query error');
?> <!doctype html> <html> <head> <meta charset="utf-8"> <title>喵喵笨兔</title> </head> <body> <div> <select> <?php while($row=mysql_fetch_assoc($result)){ ?> <option><?php echo $row['l_sort']; ?></option> <?php } ?> </select> </div>
</body>
</html>
ps:若用 do...while 寫如下,結果都一樣.
   <select>
      <?php 
         $row=mysql_fetch_assoc($result); //此行不寫,則會出現空白格
         do{ ?>
            <option><?php echo $row['l_sort']; ?></option>
      <?php } while($row=mysql_fetch_assoc($result)); ?>
   </select>

<?php  //PDO 函數寫法
$dbhost = 'localhost'; 
$dbuser = 'root';
$dbpass = '12345678';
$dbname = 'pcgame';
try{
$dsn = "mysql:host={$dbhost};dbname={$dbname};charset=utf8";
$conn = new PDO($dsn, $dbuser, $dbpass);
//發生錯誤出現錯誤提醒
$conn -> setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}catch (PDOException $e){
//發生錯誤結束資料庫連線並顯示錯誤訊息
die($e -> getMessage());
}  //DISTINCT 篩選欄位內不重覆之資料 $sql = 'SELECT DISTINCT l_sort FROM learn';
$rs = $conn -> query($sql);
?> <!doctype html> <html> <head> <meta charset="utf-8"> <title>喵喵笨兔</title> </head> <body> <div> <select> <?php while ($row = $rs ->fetch(PDO::FETCH_ASSOC)) { ?> <option><?php echo $row['l_sort']; ?></option> <?php } ?> </select> </div>
</body>
</html>

範例結果

笨兔隨手筆記於 2019/1/3

喵喵笨兔 の 喵喵的家~遊戲天地
http://vv0817.tk
http://vvv.lionfree.net
http://qo3op.asuscomm.com/vvv
https://uoedgpkhyfwzmd7zua8myg-on.drv.tw/vvv