可以做樹狀結(jié)構(gòu),先查詢第一層,然后當(dāng)展開第二層
創(chuàng)新互聯(lián)建站專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站設(shè)計、網(wǎng)站建設(shè)、臺江網(wǎng)絡(luò)推廣、微信小程序開發(fā)、臺江網(wǎng)絡(luò)營銷、臺江企業(yè)策劃、臺江品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)建站為所有大學(xué)生創(chuàng)業(yè)者提供臺江建站搭建服務(wù),24小時服務(wù)熱線:18980820575,官方網(wǎng)址:chinadenli.net
的時候,用ajax去查詢下一層的信息,如果感覺慢的
話可以給表做索引,也可以做分表處理,幾十萬不是
太大的數(shù)據(jù)
第一,沒有選擇數(shù)據(jù)庫,在連接數(shù)據(jù)庫后添加mysql_select_db("數(shù)據(jù)庫名");
第二、我感覺不代碼不全吧,因為我拷下來看了一下,少一},當(dāng)然上面那個沒少,補充的少了。
第三、還有沒看出這個$ii是干什么用的。
第四、沒感覺$selec=0與不等于0輸出有什么不同。
第五、以后最好是把html代碼與程序分開寫。
因為不知道需求,只能根據(jù)你的程序簡單修改如下:
?php
function TreeMenu($selec) {
$Conn=mysql_connect("localhost","kk","kk123");
mysql_select_db("數(shù)據(jù)庫名");
$ii=1;
$sql="select * from tvmenu where bid=".$selec;
$result=mysql_query($sql,$Conn);
$str = "";
while($row =mysql_fetch_array($result)) {
if($selec=0) {
$str = 'option value="'.$row['id'].'"'.$row['name'].'/option ';
}else {
$str = 'option value="'.$row['id'].'"'.$row['name'].'/option ';
}
echo $str;
$ii++;
TreeMenu($row['id']);
$ii--;
}
}
?
select name="bid" id="bid"
?php
TreeMenu(0);
?
/select
function get_category($id){
$str=array();
//$sql = "select * from biao where id=$id";查詢節(jié)點,自己寫吧
$result = array('id'=,'parent_id'=);//查詢結(jié)果一個數(shù)組格式
if($result){
$str = get_category($result['parent_id']);
$str[]=$result;
}
return $str;
}
}
調(diào)用get_category()就行了,$str第一個元素是節(jié)點本身,去掉就行了。
循環(huán)遞歸 function user_($fid){ str="select * from user_table where uid='$fid' "http://SQL語句 $db=pg_query($str);//查詢 while($row=pg_fetch_array($db))//循環(huán) { $str.=user_($row['id']).',';//遞歸 }}沒測試 大體的思路就這樣 試試看
你的代碼沒看明白,因為數(shù)據(jù)庫可以索引,不明白數(shù)據(jù)庫查詢?yōu)槭裁催€要二分查找,數(shù)據(jù)庫的HASH是最快速的搜索,那我就直接回答:可以把$conn放在變量里面遞歸,只要不是在遞歸函數(shù)里面再次mysql_connect就不會造成許多連接,至少浪費一點點堆棧空間(內(nèi)存)。
其次糾正一下:PHP支持全局變量,需要使用global進行申明,例如:
?php
$a=1;
f();
echo $a;
function f(){
global $a;
$a++;
}
?
最后給你說個輕松的,mysql的連接符$conn,其實在所有的mysql函數(shù)里面是可以省略的,如果你只有一個連接,這個參數(shù)完全可以不用,例如:
?php
mysql_connect('127.0.0.1','root','123456');
f();
mysql_close();
function f(){
$sql='select ....';
$res=mysql_query($sql);//可以正常執(zhí)行
$row=mysql_fetch_array($res);
mysql_free_result($res);
}
?
要實現(xiàn)無限級分類,遞歸一般是第一個也是最容易想到的,但是遞歸一般被認為占用資源的方法,所以很多系統(tǒng)是不考慮使用遞歸的!
網(wǎng)站名稱:php遞歸數(shù)據(jù)庫,php遞歸算法經(jīng)典實例
本文URL:http://chinadenli.net/article16/heeidg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)、微信公眾號、移動網(wǎng)站建設(shè)、企業(yè)建站、建站公司、App設(shè)計
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)