根据选择显示HTML

时间:2013-09-11 15:37:11

标签: php

我正在OOP上做这个PHP教程,我正在尝试将基本训练中的程序代码合并到其中,看看我是否真的学到了基础知识以外的东西,而且我遇到了困难,很长时间。

所以,我在名为Blog的类中有这两个函数:

public function navigation($selected_subject, $selected_page) {
        $output = "<ul class=\"subjects\" id=\"accordion\">";
        $subject_set = $this->get_all_subjects($public);
        while ($subject = mysqli_fetch_array($subject_set)) {
            $output .= "<li";
            if ($subject["id"] == $selected_subject['id']) { $output .= " class=\"blogselected\""; }
            $output .= ">{$subject["menu_name"]}</li>"; 
            $page_set = $this->get_pages_for_subject($subject["id"], $public);
            $output .= "<ul class=\"pages\">";
            while ($page = mysqli_fetch_array($page_set)) {
                $output .= "<li";
                if ($page['id'] == $selected_page['id'] ) { $output .= " class=\"blogselected\""; }
                $output .= "><a href=\"../public/blog_index.php?page=" . urlencode($page["id"]) .
                    "\">{$page["menu_name"]}</a></li>";
            }
            $output .= "</ul>";

        }
        $output .= "</ul>";
        return $output;
    }

public function blog_page($selected_page){ 
        if ($selected_page) {
            echo "<h2>" . $selected_page['menu_name'] . "</h2>";
            echo "<div class=\"page-content\">";
                echo  $selected_page['content'];
            echo "</div>";
        } else {
            echo "<h2>Welcome to Widget Corp</h2>";
        }
    }

和索引页面上的这段代码:

   <?php 
        $blog = new Blog; 
        global $selected_page;
    global $selected_subject;
   ?>
   <div class="blog">
        <div class="blogpost">
            <?php echo $blog->blog_page($selected_page); ?>
        </div>
        <div class="blognav">
            <?php echo $blog->navigation($selected_subject, $selected_page); ?>
        </div>
    </div>

代码部分有效。主题和子页面的导航显示正常,当点击链接时,id“?page = 1”被传递给url,但问题是代码没有向活动链接添加“blogselected”类,单击链接时也不显示内容。在内容区域中唯一显示的是h2“欢迎来到Widget Corp”,在第二个函数中的else条件,所以我相信变量$ selected_subject和$ selected_pa​​ge可能会导致问题,但我只是无法想象我独自一人。我花了无数个小时试图解决这个问题,而且我已经完全放弃了。我到底错过了什么?

0 个答案:

没有答案