需要在php中使用ajax方法获取当前页面URL

时间:2014-09-18 05:03:26

标签: php jquery ajax codeigniter

我需要获取当前页面网址。

实际上,我在Codeigniter框架中单击当前页面中的链接时使用了弹出框 在这里,我使用ajax响应方法在弹出框中显示了一些内容。 在那个内容中,我编码为

  

$这 - > URI->段(2)

。 这里我只得到了一个用ajax方法给出的url,但是我需要获取我拿着弹出框的页面的URL。

4 个答案:

答案 0 :(得分:1)

在Codeigniter中:

获取完整的网址:

通过使用current_url()方法,您可以获得页面的当前页面URl。

示例:

$page_url=current_url();
echo $page_url;

获取URI段:

通过使用以下语句,您可以获取URI中的段。

语法:

$this->uri->segment(n);
       where n=1 for controller
                 n=2 for method
                 n=3,4,5,6........ for parameters.

示例:

URL:   **http://example.com/project_name/login/home**

echo $this->uri->segment(1); //It will returns login as output
echo $this->uri->segment(2); //It will returns home as output

获取当前控制器和方法名称:

$this->router->fetch_class(); //It will returns controller name
$this->router->fetch_method(); //It will return current method name.

在jQuery中:
您可以使用jQuery获取当前页面URL:

var pathname = window.location.pathname;

答案 1 :(得分:0)

在codeigniter中,您可以使用URI类来获取当前的uri段。

$currentUrl = base_url().$this->uri->uri_string();

在这种情况下,您需要在配置文件中设置base_url并加载url helper以使用base_url()函数。

答案 2 :(得分:0)

获取当前页面网址: 例如:

www.domain.com/index.php/controller/function

        $this->load->helper("url");
        $current_uri = uri_string(); 

echo $current_uri; // this would echo '/controller/function'

答案 3 :(得分:0)

您需要查看引荐来获取弹出窗口的URL(而不是目标AJAX URL)。这可以使用UserAgent类($this->agent->referrer()

来完成

请参阅https://ellislab.com/codeigniter/user-guide/libraries/user_agent.html