如何动态地使用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
问题描述
我在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
我的尝试:
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屋!