如何动态地使用PHP和mysql表在ul元素中创建ul里面的li元素和li元素 [英] How to create ul inside li elements and li elements inside ul elements using PHP and mysql table dynamically

查看:102
本文介绍了如何动态地使用PHP和mysql表在ul元素中创建ul里面的li元素和li元素的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在mysql中的表格如下所示,colums和数据是

id refid name userdefined

1 0 A

2 0 B

3 0 C

5 1 A1

6 5 AA

7 5 AB

8 6 a1

9 6 a2

10 1 A2

11 1 A3

12 2 B1

13 2 B2

14 3 C1

15 3 C2



我是什么想要使用php递归函数动态添加ul li元素和li ul元素如何创建这样的数据。请事先帮助我。



  • A


    • A1


      • AA


        • a1
        • a2


      • AB


    • A2
    • A3


  • B


    • B1
    • B2


  • C


    • C1
    • C2
    < br $>




我的尝试:



i已经尝试过这个函数它没有按预期工作。它正在为每个子元素添加空ul空,如何防止这种情况。请提前帮助我。

 <?php  

mysql_connect (' localhost'' root'' ');

mysql_select_db( test);

函数子菜单($ parentid = 0){
$ sql = mysql_query( SELECT * FROM test WHERE refid =。$ parentid);
{
// echo'< ul>';
while($ row = mysql_fetch_array($ sql))
{
if(mysql_num_rows($ sql)> 0)
{
echo ' < ul>';
$ sql1 = mysql_query( SELECT * FROM test WHERE refid =。$ row [ ' id']);
if(mysql_num_rows($ sql1)> 0&& $ row [' refid'] == 0)
{

// echo'< li>< a href ='。$ row ['userdefined']。'>'。$ row ['name']。'< / a>';
echo ' < li class =limain>'.$row [' name'];
// echo'< li>< a href ='。$ row ['userdefined' ]。'>'。$ row ['name']。'< / a>';
子菜单($ row ['' id']);
echo ' < / li>' ;
// echo'< ul>';
}
else {
// echo'< ul>';
< span class =code-keyword> echo
' < li class =lichild>< ; a href ='。$ row [' userdefined']。' >'。$ row [' < span class =code-string> name']。' < / a>';
子菜单($ row [' id']);
echo ' < / li>' ;
}
}

echo ' < / UL GT&;';
}

}
}

子菜单();

?>

解决方案

parentid = 0){


sql = mysql_query( SELECT * FROM test WHERE refid =

parentId的)。
{
// echo'< ul>';
while(


i have table in mysql like below in that colums and data are
id refid name userdefined
1 0 A
2 0 B
3 0 C
5 1 A1
6 5 AA
7 5 AB
8 6 a1
9 6 a2
10 1 A2
11 1 A3
12 2 B1
13 2 B2
14 3 C1
15 3 C2

what i want is using php recursive function add the ul li elements and li ul elements dynamically how to create the data like this.please help me thanks in advance.


  • A

    • A1

      • AA

        • a1
        • a2

      • AB

    • A2
    • A3

  • B

    • B1
    • B2

  • C

    • C1
    • C2



What I have tried:

i have tried this function it is not working as expected .it is adding empty ul empty for each child element inside how to prevent that . please help me thanks in advance.

<?php

mysql_connect('localhost','root','');

mysql_select_db("test");

function submenu($parentid=0){
    $sql=mysql_query("SELECT * FROM test WHERE refid=".$parentid);
    {
      //echo '<ul>';
            while($row=mysql_fetch_array($sql))
            {
              if(mysql_num_rows($sql)>0)
              {
                echo '<ul>';
              $sql1=mysql_query("SELECT * FROM test WHERE refid=".$row['id']);
              if(mysql_num_rows($sql1)>0 && $row['refid']==0)
              {

              //echo '<li><a href="'.$row['userdefined'].'">'.$row['name'].'</a>';
                echo '<li class="limain">'.$row['name'];
                 //echo '<li><a href="'.$row['userdefined'].'">'.$row['name'].'</a>';
              submenu($row['id']);
              echo '</li>';
              //echo '<ul>';
            }
              else{
               //echo '<ul>';
               echo '<li class="lichild"><a href="'.$row['userdefined'].'">'.$row['name'].'</a>';
               submenu($row['id']);
               echo '</li>';
            }
          }

          echo '</ul>';
      }

    }
  }

submenu();

 ?>

解决方案

parentid=0){


sql=mysql_query("SELECT * FROM test WHERE refid=".


parentid); { //echo '<ul>'; while(


这篇关于如何动态地使用PHP和mysql表在ul元素中创建ul里面的li元素和li元素的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆