我正在处理数据库,我需要在登录过程后将用户重定向到另一个页面。
我正在使用redirect_to()
功能。代码执行后,它给出了错误
致命错误:调用未定义的函数redirect_to()
这是我试过的
if($result){
$num_rows = mysqli_num_rows($result);
if($num_rows == 1){
$found_user=mysqli_fetch_array($result);
redirect_to("main.php");
}
else{
redirect_to("index.php");
}
}
答案 0 :(得分:2)
在调用之前,您必须定义redirect_to
函数。试试这段代码
<?php
if($result){
$num_rows = mysqli_num_rows($result);
if($num_rows == 1){
$found_user=mysqli_fetch_array($result);
redirect_to("main.php");
}
else{
redirect_to("index.php");
}
}
function redirect_to($location){
header('Location:'.$location);
}
?>
答案 1 :(得分:1)
尝试使用标题:
<?php
/* Redirection vers une page différente du même dossier */
$host = $_SERVER['HTTP_HOST'];
$uri = rtrim(dirname($_SERVER['PHP_SELF']), '/\\');
$extra = 'mypage.php';
header("Location: http://$host$uri/$extra");
exit;
?>
答案 2 :(得分:0)
redirect_to()
不是一个功能。您想使用header("Location: main.php");
由于这是添加标题信息,因此需要在将任何内容传递到页面之前加载(我相信),因此在调用header()
之前不要尝试将任何内容打印到页面。
如果您想做类似的事情,我建议您使用javascript。
答案 3 :(得分:0)
redirect_to
不存在,或者如果存在,则未正确包含/要求。
添加此内容;
if( function_exists('redirect_to') == FALSE ) { //Future proofing...
function redirect_to($where) {
header('Location: '. $where);
exit;
}
}
如果您已经有输出,我建议您查看使用output buffering.
答案 4 :(得分:0)
您可以使用以下标题(“位置:....)语法轻松重定向:
header("Location: main.php");
exit;
答案 5 :(得分:0)
您应该首先为其项目配备此功能,因为其他人已指出。或者重构你的代码以使用内置的php函数 - &gt; http://php.net/manual/en/function.http-redirect.php