欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

php 進(jìn)階:實(shí)現(xiàn)無(wú)限分類(lèi)第4/4頁(yè)

 更新時(shí)間:2006年12月16日 00:00:00   作者:  

4.路徑跟蹤 
------------------------------------------------------------ 
前面已經(jīng)介紹過(guò)了分類(lèi)的創(chuàng)建實(shí)現(xiàn)方法,在分類(lèi)表里記載了 rout_id 和 rout_char 這兩個(gè)存儲(chǔ)分類(lèi)路徑的信息,在不做任何處理的情況下,程序只能夠順序下到最底層的分類(lèi)而無(wú)法倒退(當(dāng)然可利用瀏覽器的 back 鍵倒退,但這對(duì)程序來(lái)說(shuō)是不完整的),因此必須將 rout_id 和 rout_char 的信息分解出來(lái)完成實(shí)在的路徑指示. 

具體的做法,假如數(shù)據(jù)庫(kù)記載了這么一條分類(lèi)信息: 

id:4 
uid:2 
type:開(kāi)發(fā)工具 
rout_id:0:1:2:4 
rout_char:系統(tǒng):linux:開(kāi)發(fā)工具 

當(dāng)程序走到分類(lèi)'開(kāi)發(fā)工具'上時(shí),除了要求顯示路徑信息外還要求能夠去到路徑上的任一分類(lèi)中,該怎么做能?這里就需要用到 explode() 函數(shù)了.因?yàn)?nbsp;rout_id 和 rout_char 是對(duì)應(yīng)關(guān)系的,所以可將它們分解: 

$path=explode(":",$rout_id); 
$path_gb=explode(":",$rout_char); 

這時(shí)所有分類(lèi)信息都被分解了,現(xiàn)在要做的就是以鏈接的方式還原路徑信息: 

for ($i=0;;$i++) { 
$a=$i+1; 
echo "<a 
href=$php_self?func=showtype&uid=",$path[$a],">",$path_gb[$i],"</a>:"; 
if (empty($path_gb[$i])) { 
break; 



上面這段代碼就實(shí)現(xiàn)了加鏈接還原路徑的功能,因?yàn)閷?shí)現(xiàn)的是無(wú)限分類(lèi),因此是沒(méi)有上限的,所以在 for($i=0;;$i++) 里沒(méi)有范圍限制,而設(shè)置循環(huán)退出的條件是 $path_gb[$i] 中的值為空,將這段代碼插入類(lèi)別顯示版面的程序塊內(nèi)就行了: 

<? 
..... 
..... 
//顯示分類(lèi)************************************************ 
if ($func=='showtype'): 

echo "<table>"; 

//判斷分類(lèi)的狀態(tài) 
if ($uid!=0) { 
$result=mysql_query("select * from type where id=$uid"); 
$type=mysql_result($result,0,"type"); 

//******** 新加入的代碼 *************** 
$rout_id=mysql_result($result,0,"rout_id"); 
$rout_char=mysql_result($result,0,"rout_char"); 
$path=explode(":",$rout_id); 
$path_gb=explode(":",$rout_char); 
echo "<tr><td>"; 
for ($i=0;;$i++) { 
$a=$i+1; 
echo "<a 
href=$php_self?func=showtype&uid=",$path[$a],">",$path_gb[$i],"</a>:"; 
if (empty($path_gb[$i])) { 
break; 


echo "</td></tr>"; 
//******** end *********************** 

} else { 
$type='父分類(lèi)'; 


echo "<tr><td><a href='$php_self?func=createtype&uid=$uid'>創(chuàng)建分類(lèi)</a></td></tr>"; 

echo "<tr><td>$type</td></tr>"; 

$result=mysql_query("select * from type where uid=$uid"); 
$num=mysql_numrows($result); 

if (!empty($num)) { 
for ($i=0;$i<$num;$i++) { 

$id=mysql_result($result,$i,"id"); 
$type=mysql_result($result,$i,"type"); 

echo "<tr><td>"; 
echo "<a href='$php_self?func=showtype&uid=$id'>$type</a>"; 
echo "</td></tr>"; 



echo "</table>"; 
endif; /* end showtype */ 
..... 
..... 
?> 

完成這個(gè)功能塊后,就可繼續(xù)分類(lèi)信息的顯示實(shí)現(xiàn)了...

相關(guān)文章

最新評(píng)論