URI类怎么用
用index.php/user/login/name/jean形式 怎么才能让接受的页面得到name=jean呢用这个:$this->uri->uri_to_assoc(n) 要拿到view层传过来的值用$this->uri->segment(参数的位置)
位置的算法是从index.php后的第一个值算起的比如你要拿到jean这个值,segment的参数是4就可以拿到了,还有,传值的时候,你不应该把变量名也传过来,没这个必要的
index.php/控制器/方法/要传的参数拿值就是$name = $this->uri->segment(3);这样就可以了
多看帮助文档吧 看了。我看文档了……
就是看了所不明白……………… 等等我试一试 我来详细的说一下吧。 比如
<a href='./index.php/user/login/name/jean'>Jean</a>
当我在页面点这个的时候 CI跳转到./index.php/user/login中。然后通过$name = $this->uri->segment(3);取得Jean。
这个时候测试一下:echo $name;
结果: Jean
对么? 上面的 答案应该改成 $name = $this->uri->segment(2); 是2 不是 3
好了,问题还有一个
UC里面登入的时候有个$auth = rawurlencode(uc_authcode("$username\t".time(), 'ENCODE'));的过程 其中uc_authcode是uc自己的方法。当我把这个值通过<a href>传的时候 。他最终会说:
The requested URL /video/index.php/user/showregister/activation/d49b5Sw6rbI6/iqeVfGkk/6kjxLY8kBLUBwUFpi0UaCpCZ8gOuYaLcba+Q was not found on this server.
红色字体为一个变量。仔细观察里面的有/ 这岂不乱套了!!!!正在解决中 有人看过有建议没 URL 分段传参只适合传递简单内容,比如 ID 等,复杂内容建议用 GET 传参。 回复 8# Hex
只有这样了,我选择了get方法。没办法~~~~编码一下 就是了~ 你可以把斜杠替换成下划线,接收的时候再把下划线换回斜杠
页:
[1]