繁体   English   中英

如何在PHP中循环时跳过一项以从数据库显示

[英]how to skip one item to display from database while loop in php

<ul class="sub-menu">
  <?php 
    $sql = mysql_query("SELECT * FROM tbl_main_menu ORDER BY fld_main_menu_id ASC");
    while($menu_list = mysql_fetch_array($sql)){
  ?>  
  <li>
    <a href="content_editor.php?main_menu_id=<?php echo $menu_list['fld_main_menu_id']; ?>&menu_name=<?php echo $menu_list['fld_main_menu_name'];?>">
      <?php echo $menu_list['fld_main_menu_name']; ?><span class="arrow"></span>
    </a>
  </li>     
  <?php } ?>    
</ul>

这里显示数据库中的菜单:

  1. 关于
  2. 董事会
  3. 管理
  4. 制品
  5. 要求
  6. 事业

但是我不想显示数据库中的董事会,而是要在此处放置一个静态页面链接 现在我该怎么办?

您可以从html这样做

    <ul class="sub-menu">
       <?php 
          $sql = mysql_query("select * from tbl_main_menu order by fld_main_menu_id asc");
          while($menu_list = mysql_fetch_array($sql)){
       ?>  

          <?php if ($menu_list['fld_main_menu_name']!='Board of directors') { // check if name is Board of directors ?>
          <li>
          <a href="content_editor.php?main_menu_id=<?php echo $menu_list['fld_main_menu_id']; ?>&menu_name=<?php echo $menu_list['fld_main_menu_name'];?>">
             <?php echo $menu_list['fld_main_menu_name']; ?><span class="arrow"></span>
          </a>
          </li>           
        <?php } //end of if 
          } //end of while ?>      
    </ul>

您可以从数据库中执行以下操作:

$sql = mysql_query("select * from tbl_main_menu where fild_main_menu_name != 'Board of directors' order by fld_main_menu_id asc");

您可以使用PHP中的一些if语句来完成此操作,但是当您使用MySQL时,为什么不这样修改它:

<ul class="sub-menu">
    <!-- This is a static page -->
    <li><a href="static_page.html">Static Page</a></li>    
    <?php 
        $sql = mysql_query("SELECT * FROM tbl_main_menu WERE fld_main_menu_name != 'Board of directors' ORDER BY fld_main_menu_id asc");
        while($menu_list = mysql_fetch_array($sql)){
    ?>  
    <li>
        <a href="content_editor.php?main_menu_id=<?php echo $menu_list['fld_main_menu_id']; ?>&menu_name=<?php echo $menu_list['fld_main_menu_name'];?>">
         <?php echo $menu_list['fld_main_menu_name']; ?><span class="arrow"></span>
         </a>
    </li>           


    <?php } ?>

    <!-- This is a static page -->
    <li><a href="static_page.html">Static Page</a></li>    
</ul>

无论使用哪种方法,都需要确保链接名称的拼写和大小写正确。

另请注意,我以开头和结尾都包含静态链接为例。

编辑:这是基于以下评论的处理方式:

<ul class="sub-menu">   
    <?php 
        $sql = mysql_query("SELECT * FROM tbl_main_menu ORDER BY fld_main_menu_id asc");
        while($menu_list = mysql_fetch_array($sql)){
    ?>
    <?php if('fld_main_menu_name' != 'board of directors'){?>
    <li>
        <a href="content_editor.php?main_menu_id=<?php echo $menu_list['fld_main_menu_id']; ?>&menu_name=<?php echo $menu_list['fld_main_menu_name'];?>">
         <?php echo $menu_list['fld_main_menu_name']; ?><span class="arrow"></span>
         </a>
    </li>
    <?php } else { ?>
    <li>
        <a href="custom_page_path.php">Custom page name<span class="arrow"></span></a>
    </li>

    <?php } //end for if...else ?> 
    <?php } //end for while loop ?> 
</ul>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM