codeigniter uri在第二次自我调用控制器后重复

时间:2013-09-17 15:17:35

标签: php codeigniter

我移植了一些编辑脚本,然后将其自己称为CI。他们第一次工作正常,但不是第二次。我看到它是不断增长的URI。

尝试在我的脚本中找到错误,或者我将它们放在子文件夹中等等之后,我 发现它与此无关。

我设置了这个基本测试: CONTROLLER test_edit除了获取url-string之外什么都不做:

  index() 
  {   
      $data['uri_string']=uri_string(); 
      $this->load->view('test_edit',$data);
   }

   index2() 
   {  
      $data['uri_string']=uri_string(); 
      $this->load->view('test_edit',$data);
   }

VIEW test_edit只显示url-string和指向CONTROLLER的链接:

  <p>URI=<?=$uri_string ?></p>;
  <p><a href="test_edit">test_edit</a></p>;
  <p><a href="test_edit/index2">test_edit/index2</a></p>;

这个结果在 URI =
第一次点击第一个链接后 URI = test_edit /索引

第二次点击第一个链接后 URI = test_edit / test_edit / index 等 然后点击第二个链接(显然)会给出404错误。

我的问题: - WTF导致这个???为什么每个调用都没有刷新URI(缓存?),或者添加了什么段:浏览器,路由器类?

注意:不要给我关于使用base_url的sjit,URI转换的重点不是使用绝对标准URL或绝对路径。我知道如何解决这个问题,但我不想这样做。我想明白。

1 个答案:

答案 0 :(得分:1)

像这样声明<a> tags

<a href="<?=base_url('test_edit/index2')?>">test_edit/index2</a>

而不是:

<a href="test_edit/index2">test_edit/index2</a>

如果不使用base_url(),请使用anchor()的{​​{1}}:

CI