Base_url()问题与CodeIgniter中的锚标记有关

时间:2015-06-06 04:05:48

标签: php codeigniter

我是CodeIgniter的新手并且在链接形成方面遇到了麻烦。在我的页面中,我有一个指向另一个页面的链接:

<a href = "<?php base_url('feed');?>"><li>Feed Page</li></a>

此处Feed是我的controller之一,但链接显示为:

http://localhost/BusinessPad/localhost/BusinessPad/feed

实际上并不存在。我无法理解这是怎么发生的;我已确定:$config['index_page'] = '';并添加了.htaccess个文件。如果我离开$config['base_url']=''base URL仍然不适合我。

2 个答案:

答案 0 :(得分:2)

要处理锚标记,你可以这样做

<a href="<?php echo base_url();?>BusinessPad/feed">Feeds</a>

您应将base_url放在锚标记内,然后放入控制器名称。

然后你会得到你期望的localhost/BusinessPad/feed这样的网址。

注意:确保您已经$this->load->helper('url');加载了网址助手,或者已加载到autoload本身

答案 1 :(得分:0)

<a href="<?php echo base_url();?>BusinessPad/feed">Feed Page</a>

如果这不起作用,请使用此

 <a href="<?php echo base_url();?>index.php/BusinessPad/feed">Feed Page</a>

解释

  1. <?php echo base_url();?>//URL
  2. BusinessPad//Controller
  3. feed//Function
  4. 1。中,这将提供您的网站网址。 http://localhost/BusinessPad/localhost/。如果您将其托管到实时服务器,它将带有旅游域名。

    然后在 2 中,它将调用包含您的功能的控制器。

    注意:如果你打电话给你的控制器,它会在你创建时自动调用public function index()

    然后在 3 中,它会重定向到您确切需要的功能。