簡體   English   中英

當table1.id = table2.id時如何打印一件事,而如果“ if else”又如何打印?

[英]How can I print one thing when table1.id=table2.id, and another thing 'if else'?

我有一個菜單,其中某些頁面包含可打開下拉菜單的子頁面。

我有兩個SQL表:

'pages' => page_id, page_name; 'subpages' => subpage_id, page_id, page_name;

當我通過表單插入子頁面時,它們與所選父頁面具有相同的page_id。

問題是,所有菜單元素都顯示下拉箭頭-甚至沒有子頁面的菜單元素也是如此。

僅當頁面有子頁面時,才可以打印內容嗎? 這就是我要的:

if pages.page_id=subpages.page_id  
print 
  <button class="dropdown-btn">
    <?php echo $page['page_name']; ?>
    <i class="fa fa-caret-down"></i>
  </button>

else print 
  <a href="#"><?php echo $page['page_name']; ?></a>

index.php:

<?php foreach ($pages as $page) { ?>

    <button class="dropdown-btn">
      <?php echo $page['page_name']; ?>
      <i class="fa fa-caret-down"></i>
    </button>

    <div class="dropdown-container">
<?php foreach ($subpages as $subpage) { 
  if($subpage['page_id'] == $page['page_id']) {
?>
  <a href="../subpage.php?id=<?php echo $subpage['subpage_id']; ?>">
    <?php echo $subpage['subpage_name']; ?>
  </a>
<?php } } ?>
    </div>

<?php } ?>

任何幫助表示贊賞!

首先,我將像這樣更改Subpage類:

class Subpage {
    public function fetch_all(){
        global $pdo;

        $query = $pdo->prepare("SELECT * FROM subpages");
        $query->execute();

        return $query->fetchAll();
    }

    // Static function: Fetch all subpages of single page
    public static function fetch_all_page($page_id){
        global $pdo;

        $query = $pdo->prepare("SELECT * FROM subpages WHERE page_id = ?");
        $query->bindValue(1, $page_id);
        $query->execute();

        return $query->fetchAll();
    }

    public function fetch_data($subpage_id) {
        global $pdo;

        $query = $pdo->prepare("SELECT * FROM subpages WHERE subpage_id =         
?");
        $query->bindValue(1, $subpage_id);
        $query->execute();

        return $query->fetch();
    }
} 

您的index.php將變為:

<?php foreach ($pages as $page) { ?>

    <?php $subpages = Subpage::fetch_all_page($page['page_id']); ?>

    <button class="dropdown-btn">
        <?php echo $page['page_name']; ?>
        <?php if (count($subpages)): ?>
            <i class="fa fa-caret-down"></i>
        <?php endif; ?>
    </button>

    <div class="dropdown-container">
        <?php foreach ($subpages as $subpage): ?>
            <a href="../subpage.php?id=<?php echo $subpage['subpage_id']; ?>">
                <?php echo $subpage['subpage_name']; ?>
            </a>
        <?php endforeach; ?>
    </div>

<?php } ?>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM