为什么通过php的格式没有保存在选择框php中

为什么通过php的格式没有保存在选择框php中,php,sql,Php,Sql,你好,我正在努力做到这一点 实际上,我认为它工作得很好。。但是你不能像前面的例子那样区分类别和子类别 那我怎么能有一个里面有树的选择框呢 <?PHP $result = mysql_query("SELECT id, parent_id, name FROM category")or trigger_error('Query failed: ' . mysql_error(), E_USER_ERROR);; // This line executes the MySQL query

你好,我正在努力做到这一点

实际上,我认为它工作得很好。。但是你不能像前面的例子那样区分类别和子类别

那我怎么能有一个里面有树的选择框呢

<?PHP 

$result = mysql_query("SELECT id, parent_id, name FROM category")or trigger_error('Query failed: ' . mysql_error(), E_USER_ERROR);; // This line executes the MySQL query that you typed above

$datas = array(); // make a new array to hold all your data


while($row = mysql_fetch_assoc($result)) {
   $datas[] = $row;

}

function generatePageTree($datas, $depth = 0, $parent = 0){
    if($depth > 1000) return ''; // Make sure not to have an endless recursion
    $tree = '';
    for($i=0, $ni=count($datas); $i < $ni; $i++){
        if($datas[$i]['parent_id'] == $parent){
            $tree .= str_repeat('-', $depth);
            $tree .= '<option value=\''.$datas[$i]['name'] . '\'>'.$datas[$i]['name'] . '</option><br/>';
            $tree .= generatePageTree($datas, $depth+1, $datas[$i]['id']);
        }
    }
    return $tree;
}

echo '<select>';
echo(generatePageTree($datas));
echo '</select>';


?>

解决了

固定代码:

function generatePageTree($datas, $depth = 0, $parent = 0){
    if($depth > 1000) return ''; // Make sure not to have an endless recursion
    $tree = '';
    for($i=0, $ni=count($datas); $i < $ni; $i++){
        if($datas[$i]['parent_id'] == $parent){
            $tree .= str_repeat('-', $depth);
            $tree .= '<option value=\''.$datas[$i]['name'] . '\'>'.str_repeat('-', $depth).$datas[$i]['name'] . '</option><br/>';
            $tree .= generatePageTree($datas, $depth+1, $datas[$i]['id']);
        }
 function generatePageTree($datas, $depth = 0, $parent = 0){
        if($depth > 1000) return ''; // Make sure not to have an endless recursion
        $tree = '';
        for($i=0, $ni=count($datas); $i < $ni; $i++){
            if($datas[$i]['parent_id'] == $parent){
                $tree .= str_repeat('-', $depth);
                $tree .= '<option value=\''.$datas[$i]['name'] . '\'>'.str_repeat('-', $depth).$datas[$i]['name'] . '</option><br/>';
                $tree .= generatePageTree($datas, $depth+1, $datas[$i]['id']);
            }
函数generatePageTree($datas,$depth=0,$parent=0){
如果($depth>1000)返回“”;//请确保没有无休止的递归
$tree='';
对于($i=0,$ni=count($datas);$i<$ni;$i++){
如果($datas[$i]['parent\u id']==$parent){
$tree.=str_repeat('-',$depth);
$tree.=''.str_repeat('-',$depth)。$datas[$i]['name'].
; $tree.=generatePagetTree($datas,$depth+1,$datas[$i]['id']); }
已解决

固定代码:

function generatePageTree($datas, $depth = 0, $parent = 0){
    if($depth > 1000) return ''; // Make sure not to have an endless recursion
    $tree = '';
    for($i=0, $ni=count($datas); $i < $ni; $i++){
        if($datas[$i]['parent_id'] == $parent){
            $tree .= str_repeat('-', $depth);
            $tree .= '<option value=\''.$datas[$i]['name'] . '\'>'.str_repeat('-', $depth).$datas[$i]['name'] . '</option><br/>';
            $tree .= generatePageTree($datas, $depth+1, $datas[$i]['id']);
        }
 function generatePageTree($datas, $depth = 0, $parent = 0){
        if($depth > 1000) return ''; // Make sure not to have an endless recursion
        $tree = '';
        for($i=0, $ni=count($datas); $i < $ni; $i++){
            if($datas[$i]['parent_id'] == $parent){
                $tree .= str_repeat('-', $depth);
                $tree .= '<option value=\''.$datas[$i]['name'] . '\'>'.str_repeat('-', $depth).$datas[$i]['name'] . '</option><br/>';
                $tree .= generatePageTree($datas, $depth+1, $datas[$i]['id']);
            }
函数generatePageTree($datas,$depth=0,$parent=0){
如果($depth>1000)返回“”;//请确保没有无休止的递归
$tree='';
对于($i=0,$ni=count($datas);$i<$ni;$i++){
如果($datas[$i]['parent\u id']==$parent){
$tree.=str_repeat('-',$depth);
$tree.=''.str_repeat('-',$depth)。$datas[$i]['name'].
; $tree.=generatePagetTree($datas,$depth+1,$datas[$i]['id']); }
首先尝试使用HTML(不使用PHP代码!)。当它按照您的意愿工作时,您可以开始编写PHP代码。我刚刚发现错误,请在下面的文本框中将解决方案作为答案发布,这样每个人都可以看到您解决了问题。