クラス =prodcut とその部下をリストします。uid = 0 の場所から始まりません
例のデータはどこから始まりますかuid = 3
したがって、最初に開始点の ID を取得してから再帰する必要があります。
class=prodcut とその下位をリストする場合、uid = の位置から開始されません。 0
例のデータは uid = 3 から始まります
したがって、最初に開始点の ID を取得してから再帰する必要があります
フォーラムはコミュニケーションの場です。コードが必要な場合は、左折して Witkey.com ($uid=0, $ext='') にアクセスしてください。 ) {
$sql = "uid=$uid の列から * を選択" . ($uid && $ext ? " and class='$ext'" : '' ); sql);while($row = mysql_fetch_assoc($rs)) { この行はエラーを報告します
function foo($uid=0, $ext='') { $sql = "select * from tbl_name where uid=$uid" . ($uid && $ext ? " and class='$ext'" : ''); $rs = mysql_query($sql); while($row = mysql_fetch_assoc($rs)) { foo($row['id'], $ext); } }
}
}
function foo($uid=0, $ext='') { $sql = "select * from tbl_name where uid=$uid" . ($uid && $ext ? " and class='$ext'" : ''); $rs = mysql_query($sql); while($row = mysql_fetch_assoc($rs)) { foo($row['id'], $ext); } }
たとえば、私のコラムには ホーム ニュース 製品 ビデオ
バックグラウンドで製品を公開する場合、オプションの列には製品列のみが表示されます/
その場合、列には複数の製品列が存在する可能性があります.... class フィールドは、列の型を区別するために使用されます。たとえば、product は、再帰なしですべての product 列
を意味します。
我一开始就讲了,既然你试要从某一个节点开始,就要先找到这个节点
无论这个节点存放在什么位置,都可以按其唯一的属性找到他
是啊.大哥
可是我不会从节点开始循环啊......怎么办,,,百度很多资料了.全是递归的
function foo($uid,$class=''){ if($class==''){ $sql = "select * from table where uid='".$uid."'"; }else{ $sql = "select * from table where uid='".$uid."' and class='".$class."'"; } $query = mysql_query($sql) or die(mysql_error()); while($result = mysql_fetch_assoc($query)){ echo $result['id'].' '.$result['title'].'<br>'; foo($result['id'],$result['class']); }}foo(0);
你能从根节点上递归,不就能从子节点上递归吗?
有什么区别呢?
用递归还是不用递归,这取决于你的需要。我在精华区有好几个帖子,你可以先看看
你能从根节点上递归,不就能从子节点上递归吗?
有什么区别呢?
用递归还是不用递归,这取决于你的需要。我在精华区有好几个帖子,你可以先看看