如果URL中有#符号,则Codeigniter重定向功能将失败

时间:2012-08-22 22:20:43

标签: php codeigniter url session

我正在使用PHP Codeigniter库中的重定向将用户重定向到上次访问的URL(如果他们没有登录到我们的门户网站)。

$ uri = $ this-> ci-> uri-> uri_string(); $ this-> ci-> session-> set_flashdata('redirect',$ uri);

除了一种情况外,它的工作正常:

当ex:

的网址中有#符号时

http://myview.com/library#portal/sh2qQXF3SxAbJ

重定向回http://myview.com/library

#符号后面没有地址。

在我们的前端,我们使用Backbone.js来检测#符号并启动接下来需要使用Javascript进行的操作..

我的问题是,是否有办法将整个网址存储在codeigniter会话变量中?

1 个答案:

答案 0 :(得分:2)

具有#的部分称为片段,它永远不会传输到服务器(除非您手动执行,作为AJAX中的参数或其他内容)。因此,您的PHP将永远不会在查询URL中看到它。