數(shù)據(jù)庫(kù)設(shè)置3個(gè)字段 id name fid fid就是頂級(jí)id的意思
讓客戶(hù)滿(mǎn)意是我們工作的目標(biāo),不斷超越客戶(hù)的期望值來(lái)自于我們對(duì)這個(gè)行業(yè)的熱愛(ài)。我們立志把好的技術(shù)通過(guò)有效、簡(jiǎn)單的方式提供給客戶(hù),將通過(guò)不懈努力成為客戶(hù)在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:主機(jī)域名、虛擬主機(jī)、營(yíng)銷(xiāo)軟件、網(wǎng)站建設(shè)、天全網(wǎng)站維護(hù)、網(wǎng)站推廣。
id name fid
1 分類(lèi)1 0
2 分類(lèi)2 0
3 分類(lèi)1-1 1
4 分類(lèi)1-2 1
5 分類(lèi)2-1 2
6 分類(lèi)2-2 2
數(shù)據(jù)庫(kù)就是這種模式,fid為0的是最大分類(lèi)。id為3 和 4的分類(lèi) 是id 為 1 分類(lèi)的子分類(lèi) ,所以fid都為 1 。5和6 是id 為 2的子分類(lèi)。
你查找數(shù)據(jù)庫(kù)的時(shí)候查找 fid=0的數(shù)據(jù) ,找出頂級(jí)分類(lèi) 1 和 2 ,再查找fid分別為 1 和 2的分類(lèi),就是對(duì)應(yīng)的子類(lèi),你用foreach遍歷出來(lái)就是了,
PHP(PHP: Hypertext Preprocessor)即“超文本預(yù)處理器”,是在服務(wù)器端執(zhí)行的腳本語(yǔ)言,尤其適用于Web開(kāi)發(fā)并可嵌入HTML中。
PHP語(yǔ)法學(xué)習(xí)了C語(yǔ)言,吸納Java和Perl多個(gè)語(yǔ)言的特色發(fā)展出自己的特色語(yǔ)法,并根據(jù)它們的長(zhǎng)項(xiàng)持續(xù)改進(jìn)提升自己,例如java的面向?qū)ο缶幊?,該語(yǔ)言當(dāng)初創(chuàng)建的主要目標(biāo)是讓開(kāi)發(fā)人員快速編寫(xiě)出優(yōu)質(zhì)的web網(wǎng)站。PHP同時(shí)支持面向?qū)ο蠛兔嫦蜻^(guò)程的開(kāi)發(fā),使用上非常靈活。
語(yǔ)言特點(diǎn)
PHP是一個(gè)受眾大并且擁有眾多開(kāi)發(fā)者的開(kāi)源軟件項(xiàng)目,Linux + Nginx + Mysql + PHP是它的經(jīng)典安裝部署方式,相關(guān)的軟件全部都是開(kāi)源免費(fèi)的,所以使用PHP可以節(jié)約大量的正版授權(quán)費(fèi)用。
不過(guò)PHP作為一個(gè)開(kāi)源軟件,它缺乏大型科技公司的支持背景,網(wǎng)絡(luò)上對(duì)它的唱衰也是經(jīng)久不衰,不過(guò)它的持續(xù)迭代和性能持續(xù)增強(qiáng)的現(xiàn)實(shí)卻是鼓舞人心的,PHP社區(qū)用實(shí)際行動(dòng)給予各種質(zhì)疑強(qiáng)有力的回?fù)簟?/p>
可以做樹(shù)狀結(jié)構(gòu),先查詢(xún)第一層,然后當(dāng)展開(kāi)第二層
的時(shí)候,用ajax去查詢(xún)下一層的信息,如果感覺(jué)慢的
話(huà)可以給表做索引,也可以做分表處理,幾十萬(wàn)不是
太大的數(shù)據(jù)
數(shù)據(jù)庫(kù)中給多個(gè)父級(jí)ID字段,例如:國(guó)內(nèi)新聞的PID(父級(jí)ID)是新聞的ID,體育新聞的PID是國(guó)內(nèi)新聞的ID,這樣通過(guò)查找PID就可以找到上一級(jí)別。
function?selectReferee($rid){
//查詢(xún)?cè)撏扑]人是否滿(mǎn)3個(gè)人
$sql?=?"SELECT?*?FROM?talbe_name?WHERE?`id`?=?".$rid;
$res?=?array();//$res為查詢(xún)結(jié)果
if(count($res)=3){
foreach?($res?as?$k=$v){
selectReferee($v['id']);//如果該推薦人滿(mǎn)了3個(gè)人,則遞歸查詢(xún)下面的所有人
}
}else{
return?$rid;//返回推薦人id
}
}
大概的思路就是這樣,主要是一個(gè)遞歸,你自己完善,測(cè)試一下
字面理解無(wú)限分類(lèi):
一級(jí)分類(lèi) - 二級(jí)分類(lèi) - 三級(jí)分類(lèi)...........
1級(jí)下面有多個(gè)2級(jí).
2級(jí)下面有多個(gè)3級(jí).
........
數(shù)據(jù)庫(kù)的設(shè)計(jì):
表名:table_categories
字段:
cid [主鍵]
name 分類(lèi)名
parentid:上一級(jí)cid.如果是一級(jí)分類(lèi).該字段數(shù)據(jù)等于0;