【问题标题】:How to set menu links (href) in codeigniter?如何在codeigniter中设置菜单链接(href)?
【发布时间】:2016-10-21 10:58:37
【问题描述】:

我正在尝试将我的核心 php 项目转换为 CodeIgniter。
我在配置文件中设置了项目的baseurl,即:http://localhost/myproject/

当我尝试设置菜单锚href 时,我需要通过controller_name/action_name

<a href='controller_name/action_name'> Tag_Name

我无法直接为同一个控制器设置动作名称。

<a href='action_name'> Tag_Name

我还在控制器中加载了URL helper。

【问题讨论】:

    标签: codeigniter


    【解决方案1】:

    请确保您已添加 this->load->helper('url');在控制器中,或者您可以添加 config->autoload.

    <a href="<?php echo base_url('controller/function')?>"></a>
    or
    <a href="<?php echo site_url('controller/function')?>"></a>
    

    【讨论】:

      【解决方案2】:

      一起去

      &lt;a href="&lt;?php echo site_url('controller/function/uri') ?&gt;"&gt;Link&lt;/a&gt;

      或

      &lt;?php echo anchor('controller/function/uri', 'Link', 'class="link-class"') ?&gt;

      两者中的任何一个都应该没问题。 另请参阅this link.

      或者您可以使用base_url() 函数来获取配置文件中为$config['base_url'] 设置的值。

      【讨论】:

      • 其实我很困惑。我在专用控制器中创建了一个函数名称。当我在链接中调用该函数时,为什么我需要 a href='devot/about' 但在许多示例中,我已经看到它只是通过提供函数名称来简单地作为 href='about' 完成。
      • 如果我通过 action_name 我得到 localhost/devot/index.php/about - 它给出 404 错误页面
      • 如果我再次通过 controller_name/action_name 我得到 localhost/devot/index.php/about - 它给出 404 错误页面
      • 对不起,请忽略我之前的评论。如果我通过 action_name 我得到 localhost/devot/index.php/mycontroller/about - 它再次给出 404 错误页面
      • config.php 中的 $config['index_page'] 值是什么?应该为空
      【解决方案3】:

      使用下面的代码

      <a href="<?php echo base_url('controller_name/action_name')?>">Tag_name</a>
      

      谢谢你

      【讨论】:

        猜你喜欢
        • 2014-04-10
        • 2018-09-07
        • 2021-01-09
        • 1970-01-01
        • 2021-02-14
        • 1970-01-01
        • 2021-01-01
        • 1970-01-01
        • 2015-08-02
        相关资源
        最近更新 更多