简体   繁体   中英

CodeIgniter current_url doesn't show query strings

Hi I'm trying to store my current url in a session variable.

My app uses query strings like www.domain.com/add?url=http://www.google.com

but current_url() returns 'ww.domain.com/add'. The url without the query strings.

I've checked the helper file and current_url seems to just append the uri segments to the site_url set in the config.

    function current_url()
{
    $CI =& get_instance();
    return $CI->config->site_url($CI->uri->uri_string());
}

anyone know how I can grab the query strings to append them, or even just grab the whole url.

Create a MY_url_helper:

function current_url()
{
    $CI =& get_instance();

    $url = $CI->config->site_url($CI->uri->uri_string());
    return $_SERVER['QUERY_STRING'] ? $url.'?'.$_SERVER['QUERY_STRING'] : $url;
}

I don't think CodeIgniter has any helpers for this. Just use PHP's native support for this:

Echo the full URL:

echo base_url().ltrim($_SERVER['REQUEST_URI'], '/');

Only the query strings:

echo $_SERVER['QUERY_STRING'];

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM