I'm trying to make a function that redirects to the last page opened after the user is logging in. But it is possible that an iframe is opened and if the user gets redirected when this page is opened i want the user to get redirected to the url of the main page instead of the url of the iframe. I tried using:
$url = $_SERVER['HTTP_REFERER'];
$url = $_SERVER['REQUEST_URI'];
$url = '<script>document.write(window.parent.window.location.pathname);</script>';
The first two get the url of the iframe and the third one after i cached the variable start changing when i go to a different page. When i redirect to these url's the first two work but the third one tries to redirect to the full script instead of the result, but if i echo the variable i do get a url. The function is used in laravel and this is the function:
protected function redirectTo($request)
{
$url = "the current url"
Cache::forget('key');
Cache::put('key', $url, 10);
echo '<script>window.parent.window.location.href = \'' . config('app.url') . 'login\'</script>';die();
}
This will bring the user to the login page and after the user is logged in it should go to the old page with this function:
if(Auth ::attempt(['usr_emailaddress' => $email, 'password' => $pass]))
{
$value = Cache::get('key');
return redirect($value);
}