Trang chủTrang chủ Liên hệLiên hệ
PHP BASIC

» Events  » References  » Tutorials  » Hướng dẫn  RSS Feed2.0 Đăng ký | Đăng nhập

Dịch PHP Manual (đã dịch 86 /1248)
Thêm bài viết mới
#Thêm ý kiến
Emotion|Show / Hide

Thấy thỉnh thoảng anh em lại gặp vấn đề về menu đa cấp và viết đệ qui, mấy hôm nay viết shopping cart nên có chút kinh nghiệm share với anh em
Về database, tạo menu có cấu trúc đơn giản như sau:
table categories: id,parentid,title
id parentid  title
1  0         Menu 1
2  0         Menu 2
3  1         Menu 1.0
4  1         Menu 1.1
5  3         Menu 1.0.0
6  3         Menu 1.0.1
yêu cầu khi tạo thành menu phải có dạng  
Menu 1
  Menu 1.0
     Menu 1.0.0
     Menu 1.0.1
  Menu 1.1
Menu 2

Phần code:
<?php
function Menu($parentid = 0,$space = '--', $trees = NULL){
if(!
$trees) $trees = array();
$sql = mysql_query("SELECT * FROM php_category WHERE  cat_parentid = ".intval($parentid));
while(
$rs = mysql_fetch_assoc($sql)){
  
$trees[] = array('id'=>$rs['cat_id'],'title'=>$space.$rs['cat_title']);
$trees = Menu($rs['cat_id'],$space.'--',$trees);
}
return
$trees;
}
$Menu = Menu(0);
$str = '';
foreach(
$Menu as $k=>$rs) $str .= '<a href="#menu='.$rs['id'].'">'.$rs['title'].'</a>';
echo
$str;
?>
Ngoài ra hàm này có thể hiển thị được cây thư mục của 1 category bất kỳ, ví dụ: $Menu = Menu(3) sẽ hiển thị cây thư mục của các menu con của category có id = 3
Chúc thành công

Tác giả:TG
Webmaster
http://phpbasic.com

Show / Hide
#Thêm ý kiến

Add phpBasic to your browser's search box
Digg.com delicious Furl Google Bookmark Reddit Slashdot Yahoo My Web

Tableless template Framework PHP functions
 


XHTML Standard
Xây dựng & phát triển bởi tất cả các thành viên.
Powered by http://phpbasic.com