【问题标题】:How to link to another pages in codeigniter by clicking an anchor tags?如何通过单击锚标签链接到 codeigniter 中的其他页面?
【发布时间】:2013-01-10 00:26:48
【问题描述】:

我只是codeigniter的初学者,我尝试通过单击超链接重定向到控制器页面(PageController.php)。我可能能够重定向到该特定页面,但该页面的布局不是我所期望的。该页面是我在 routes.php 中设置为默认控制器的页面。当我尚未单击超链接以重定向到该页面时,该页面正常且格式正确。我已经在本地机器上对此进行了测试。希望有人可以帮助我。谢谢!

这是我的代码:

页面控制器.php

PageController 扩展 CI_Controller { 函数索引(){ $this->loadPageHeader(); $this->loadMenuHeader(); $this->loadAdvertisingVideo(); $this->loadMainContent(); $this->loadSidebar(); $this->loadPageFooter(); } 函数 loadPageHeader(){ // 正在这里加载页眉... } 函数 loadMenuHeader(){ // 在此处加载菜单标题... } 函数加载广告视频(){ // 在这里加载一些东西... } 函数加载主内容(){ // 这里正在加载页面的主要内容... } 函数加载边栏(){ // 在这里加载一些... } 函数加载页脚(){ // 正在加载页脚... } }



这是执行重定向到控制器页面的超链接。

首页
模块
关于我们

【问题讨论】:

  • 老实说,这是编写控制器的一种相当奇特的方法。我真的建议花几个小时关注Introduction to Codeigniter,阅读帮助指南中一般主题部分的全部,然后在 Google 上阅读一些 Codeigniter 教程。

标签: php codeigniter


【解决方案1】:

根据您在此处显示的内容,您可能希望设置一条路由来捕获此控制器的所有内容。在您的配置 routes.php 文件中添加一行:

$route['PageController(/:any)'] = "PageController";

然后在你的控制器索引方法中,你会像这样解析出 uri 段,如果适用的话......

   function index(){
        $arg_1 = $this->uri->segment(1);
        $arg_2 = $this->uri->segment(2);
        //etc.

        $this->loadPageHeader();
        $this->loadMenuHeader();
        $this->loadAdvertisingVideo();
        $this->loadMainContent();
        $this->loadSidebar();
        $this->loadPageFooter();
    }

如果您想要一种方法来处理此控制器的所有请求,则 URL 段很有用,但在您的情况下可能不是必需的。我对你的场景了解不够。如果我遗漏了什么并且您有更多问题,请随时提问,我可能会更新。

【讨论】:

  • 感谢您的回答,我会尝试检查一下。
【解决方案2】:

看看使用路由,例如,如果你有 myfile.php 调用控制器 myfile.php 和类 Myfile 等...然后你可以调用例如 /myfile/my_function 或将其映射到路由。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-03-30
    • 2018-10-25
    • 2013-09-08
    • 2014-01-20
    • 1970-01-01
    • 2022-12-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多