[英]Passing parameters from view to controller in CodeIgniter
我有这个基本问题
这是 :
<a href="userconsole/indivstore/<?php echo $obj->store_id; ?>/">
<?php echo $obj->title; ?></a>
与此不同的是:
<a href="/userconsole/indivstore/<?php echo $obj->store_id; ?>/">
<?php echo $obj->title; ?></a>
或者没有区别?
(我目前正在使用CodeIgniter)
除非我错过了什么,唯一的区别(并且至少有一个区别)是HTML,而不是PHP本身。
第二个链接以/
开头,这意味着它指向链接
http://yoursite.tld/userconsole/etc
第一个指向/userconsole/etc
相对于你调用它的地方。 因此,如果您在dir /yourpath
,它会指向http://yoursite.tld/yourpath/userconsole/etc
让我们在www.somesite.com/url/上说
同
<a href="userconsole/indivstore/<?php echo $obj->store_id; ?>/">
<?php echo $obj->title; ?></a>
Ur访问www.somesite.com/url/userconsole/indivstore/
同
<a href="/userconsole/indivstore/<?php echo $obj->store_id; ?>/">
<?php echo $obj->title; ?></a>
这是/
重要的! 你回到你的根路径,这意味着www.somesite.com
。 结果: www.somesite.com/userconsole/indivstore/
所以它的所有重建与绝对路径。
第一个链接具有指向您正在访问的实际页面的相对路径,但第二个页面具有绝对路径,因此:
如果您在: http://example.com/something/other-thing
: http://example.com/something/other-thing
在第一种情况下,下一个网址将是: http://example.com/something/other-thing/userconsole..etc
: http://example.com/something/other-thing/userconsole..etc
在第二种情况下,下一个网址将是: http://example.com/userconsole..etc
: http://example.com/userconsole..etc
<a href="userconsole/indivstore/<?php echo $obj->store_id; ?>/">
是相对URL,因此如果您在http://host/site/current-page
,它将指向http://host/site/current-page/userconsole/indivstore/<?php echo $obj->store_id; ?>
http://host/site/current-page/userconsole/indivstore/<?php echo $obj->store_id; ?>
哪个错了
<a href="/userconsole/indivstore/<?php echo $obj->store_id; ?>/">
是绝对URL,因此,如果您在http://host/site/current-page
,它将指向http://host/userconsole/indivstore/<?php echo $obj->store_id; ?>
http://host/userconsole/indivstore/<?php echo $obj->store_id; ?>
如果您的站点位于子文件夹下,则会出错。
使用codeigniter生成URL的正确方法是使用site_url()帮助程序,请查看http://codeigniter.com/user_guide/helpers/url_helper.html
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.