让我在以下位置
http://localhost/ignitershop/index.php/seller_controller/viewcart
在这个视图中,我有一个链接,使用它我想移动到同一控制器的另一个方法removeRow()。所以我在下面使用href
<a href="seller_controller/removeRow" >CLICK TO REMOVE </a>
所以我希望新的网址是:
http://localhost/ignitershop/index.php/seller_controller/removeRow
但是url似乎是串联的。它正在变得如下:
http://localhost/ignitershop/index.php/seller_controller/seller_controller/removeRow
这就是seller_controller来了两次。我也面临着使用重定向的这种类型的连接问题。所以我需要知道切换同一控制器的最佳方式是什么。有什么好的解决方案吗???
像一样尝试
<a href="<?php echo site_url('seller_controller/removeRow');?>" >CLICK TO REMOVE </a>
或者你也可以试试
<a href="<?php echo site_url().'seller_controller/removeRow';?>" >CLICK TO REMOVE </a>
您继续使用base_url()
,因为它不包括索引页(可能是index.php
),其中site_url()
与base_url()
和index url
组合。
在请求脚本时使用ob_start();
。
之所以会发生这种情况,是因为您的链接是相对的,即它被添加到当前URI减去最后一部分。把它想象成目录和文件——最后一部分(viewcart)是一个文件,其余部分是一个目录。相对链接的意思是"嘿,带我去这个文件(removeRow),但从当前目录开始挖掘"。
这意味着,如果你有http://localhost/ignitershop/index.php/seller_controller/viewcart
,并且在那里你访问了一个包含内容<a href="one/two/three">Link</a>
的链接,它会将你发送到http://localhost/ignitershop/index.php/seller_controller/one/two/three
要修复它,请相应地使用URL帮助程序中的base_url()
或site_url()
函数,这些函数将为您完成任务。查看文档以了解更多信息。
尝试使用site_url()或base_url()来使用绝对路径