main_view
<table width="1100" border="1" align="center">
<tr><?php $this->load->view('header_view'); ?></tr>
<tr><?php $this->load->view('menu_view'); ?></tr>
<tr>
<td colspan="2" id="content">
<?php
$a = ($_GET['pages/']);
switch($a)
{
case "home":
require("pages/home");
break;
case "about":
require("pages/about");
break;
}
?>
</td>
<?php $this->load->view('rightMenu_view'); ?></tr>
<tr><?php $this->load->view('footer_view'); ?></tr>
</table>
menu_view
<div id="menu">
<ul>
<li><a href="pages/home">Home</a></li>
<li><a href="pages/about">About</a></li>
<li><a href="pages/staff">Staff</a></li>
<li><a href="pages/chat">Chat</a></li>
<li><a href="pages/championat">Championat</a></li>
<li><a href="pages/contact">Contact</a></li>
</ul>
</div>
pages_controller
class Pages extends CI_Controller
{
public function __construct()
{
parent::__construct();
$this->load->helper('html');
$this->load->helper('url');
$this->load->helper('form');
}
public function index()
{
$this->load->view('main_view');
}
public function home() { echo "Hello"; }
public function about() { echo "Hello about"; }
}
我想切换到菜单中的其他选项,只更改内容td id="content"
列。但它没有用。
我认为错误发生在开关。
我做了类似的事情,但我还没有使用过框架
答案 0 :(得分:0)
首先,使用表格作为格式化方法不是语义HTML。最好避免它。
codeigniter有$ this-&gt; input-&gt; get('variablename');这比$ _GET()更安全,如果没有设置GET,则返回FALSE。
URL中的get调用需要URL中的name1 = value1。你没有使用它,这可能是它无法正常工作的原因。
CI确实允许控制器方法中的参数。 look into it,您可以将开关放在Pages :: index方法中。