中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何在php項目中實現一個面包屑導航功能

發布時間:2020-12-10 15:12:14 來源:億速云 閱讀:152 作者:Leah 欄目:開發技術

如何在php項目中實現一個面包屑導航功能?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

path表示所有的祖先id,fullpath表示所有的祖先id和本身id

--
-- 表的結構 `tp_likecate`
--

CREATE TABLE IF NOT EXISTS `tp_likecate` (
 `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
 `catename` varchar(24) NOT NULL,
 `path` varchar(10) NOT NULL,
 `fullpath` varchar(20) NOT NULL,
 PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=9 ;

數據

--
-- 轉存表中的數據 `tp_likecate`
--

INSERT INTO `tp_likecate` (`id`, `catename`, `path`, `fullpath`) VALUES
(1, '手機', '', ',1'),
(2, '功能手機', '1', '1,2'),
(3, '老人手機', '1,2', '1,2,3'),
(4, '兒童手機', '1,2', '1,2,4'),
(5, '智能手機', '1', '1,5'),
(6, 'android手機', '1,5', '1,5,6'),
(7, 'IOS手機', '1,5', '1,5,7'),
(8, 'WinPhoto手機', '1,5', '1,5,8');

數據庫連接:

<&#63;php 
$db_host = 'localhost';
$db_user = 'root';
$db_password = '';
$db_name = 'test';
$con = mysql_connect($db_host, $db_user, $db_password) or die(mysql_error());
mysql_select_db($db_name, $con) or die(mysql_error());
mysql_query('set names utf8') or die(mysql_error());
&#63;>

主函數:

function likecate($path='') {
  // concat() 連接字段
  $sql = "select id,catename,path, concat(path,',',id) as fullpath from tp_likecate order by fullpath asc";
  $res = mysql_query($sql);
  $result = array();
  while($row=mysql_fetch_assoc($res)) {
    $deep = count(explode(',', trim($row['fullpath'], ','))); // explode字符串轉換為數組 implode數組轉換為字符串
    $row['catename'] = @str_repeat('&nbsp;&nbsp;', $deep).'|--'.$row['catename'];
    $result[] = $row;
  }
  return $result;
}

輸出:

// 簡單輸出
$res = likecate();

echo "<select name='cate'>";
foreach($res as $key=>$val) {
  echo "<option>{$val['catename']}</option>";
}
echo "</select>";
echo "<br />";

// 封裝方法
function getPathCate($cateid) {
  $sql = "select *,concat(path, ',',id) fullpath from tp_likecate where id = $cateid";
  $res = mysql_query($sql);
  $row = mysql_fetch_assoc($res);
  $ids = $row['fullpath'];
  $sql = "select * from tp_likecate where id in($ids) order by id asc";
  $res = mysql_query($sql);
  $result = array();
  while($row = mysql_fetch_assoc($res)) {
    $result[] = $row;
  }
  return $result;
}

// 加上了鏈接的參數
function displayCatePath($cateid,$link='cate.php&#63;cid=') { // 也可以組裝
  $res = getPathCate($cateid);
  $str = '';
  foreach($res as $k=>$v) {
    $str.= "<a href='{$link}{$v['id']}'>{$v['catename']}</a> > ";
  }
  return $str;
}
echo displayCatePath(4);

看完上述內容,你們掌握如何在php項目中實現一個面包屑導航功能的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

绿春县| 香格里拉县| 丹寨县| 扶绥县| 呼和浩特市| 荥阳市| 扬州市| 新建县| 丰台区| 兴义市| 遂溪县| 云梦县| 张家川| 新建县| 彭阳县| 黄梅县| 东城区| 海盐县| 桑植县| 宝坻区| 延津县| 南部县| 离岛区| 望江县| 开封市| 桐乡市| 嘉兴市| 荆门市| 汕尾市| 深圳市| 汶上县| 当阳市| 五寨县| 江达县| 贵港市| 包头市| 安宁市| 香河县| 泸西县| 游戏| 陆川县|