2017-09-25 43 views
0

这是我的代码的快照代码。我希望它允许用户点击链接并显示内容。但是显示的列表是基于我输入文本和其ID的数据库。所以我想要一个函数,当它被点击时可以检测到id,并将id的特定值传递给标签内容。标签内容将决定哪个ID被点击。如果点击ID“1”,则显示ID“1”的内容。我正在研究酒店楼层的上市情况,并分别显示每个楼层的内容。单击链接后检测列标识

<li> 
    <?php 
     $conn = new mysqli('localhost', 'root', '', 'test') or die ('Cannot connect to db'); 
     $result = $conn->query("select * from floors"); 
     while ($row = $result->fetch_assoc()) 
     { 
      ?><li><a href="#floor" data-toggle="tab"><?php echo $row['listfloor'];?></a></li><?php 
     } 
    ?>         
</li> 

<div class="tab-content> 
    <div id="floor" class="tab-pane fade in"> 
    <?php 
     $conn = new mysqli('localhost', 'root', '', 'test') or die ('Cannot connect to db'); 
     $result = $conn->query("select * from floors"); 
     $row = $result->fetch_assoc(); 
     if ("the value of id clicked by user") 
     { 
      echo include 'groundfloor.php'; 
     } 
    ?>       
</div> 
</div> 
+0

使用'$ _GET'并在SQL查询中添加一个'WHERE'语句。没什么复杂。 – Twinfriends

+0

你能举一个例子语法吗?我很新的PHP编程 – Richmond

+0

然后你应该谷歌和学习如何在PHP中使用'$ _GET'。它是PHP基础知识的一部分,你应该真的做一些研究并了解它。这里没有必要举一个例子,网络上有大量的实例。做你的研究,如果你仍然不明白它是如何工作的,那么回来,我会帮你。 – Twinfriends

回答

0

在有链接的页面,更改:

href="#floor" 

href="#floor?id=<?= $row['listfloorid]; ?>" 

而且你的列表页面上查询更改为:

<?php $conn = new mysqli('localhost', 'root', '', 'test') or die ('Cannot connect to db'); 
$result = $conn->query("select * from floors"); 
$row = $result->fetch_assoc(); 

?> 
<div class="tab-content"> 
    <div id="<?= $row['listfloorid']; ?>" class="tab - pane fade in"> 
     <?php 
      echo include $row['floorname'] . '.php'; 
     ?> 
    </div> 
</div> 
+0

其实我只能在href中回显id行,并将id值放在tab内容中。但这是来自数据库。如果管理员想要添加另一个新楼层会怎么样?我不能只复制标签内容中的功能。如何解决这个问题? – Richmond

+0

我相信这大致显示了你想要的。 – Cody604

+0

它根本不起作用。 – Richmond

0

这是工作

在标签内容

<div class="tab content"> 
    <div id="floor1" class="tab-pane fade in">  
     <?php echo include 'groundfloor.php'; ?> 
    </div> 
</div> 

链接

<li><a href="#floor<?php echo $row['id'];?>" data-toggle="tab"><?php echo $row['listfloor'];?></a></li> 

但问题是,我想只有1整层功能。因此,如果管理员添加了新楼层,则不必再次复制语法