Для этого может быть много причин.Во-первых, вы можете диагностировать проблему, используя ошибки отображения
Если вы уроните
error_reporting(E_ALL);
ini_set("display_errors", 1);
в верхней части документа, а затем запустите его в браузере, это может вернуть причину, по которой он не работает.
Что касается самой функции redirect()
, вы смотрели, какие параметры ей требуются?Мне нравится использовать программное обеспечение под названием PHPStorm, вы можете получить его в качестве бесплатной пробной версии, при определении функции она скажет вам, какие параметры требуется для функции и в каком порядке.Очень полезно.
Если здесь ничего не помогает, я хотел бы использовать функцию перенаправления, которую вы можете добавить в свой документ и перезвонить куда угодно
$site_prefix = 'http'; //This could equal http or https depending on your ssl
$site_url = $_SERVER['HTTP_HOST']; //You could replace $_SERVER['HTTP_HOST'] with your actual hostname like 'example.com'
function redirect_to($page){
global $site_prefix;
global $site_url;
if($page == 'home'){
header("Location: {$site_prefix}://{$site_url}/");
}
elseif($page == ''){
header("Location: {$site_prefix}://{$site_url}");
}
else{
header("Location: {$site_prefix}://{$site_url}/{$page}");
}
}
Вы можетезатем вызовите эту функцию следующим образом:
redirect_to('admin/dashboard.php');
Или, если вы используете симпатичные URL
redirect_to('admin/dashboard');
Мне нравится использовать глобальные переменные вместо использования переменной site_url
внутри функциипотому что я склонен использовать их по всему сайту.
Если худшее приходит к худшему, вы всегда можете запустить редирект PHP, используя
header("Location: http://example.com/mypage.php");
Я знаю, что это было очень долго, но я надеюсь, что это поможет