這就是我的課:PHP的重定向不起作用
public function is_admin() {
try {
$admin = $this->db->prepare("SELECT * FROM users WHERE user_name = 'admin' AND user_pass='123456'");
$admin->execute();
if ($admin->rowCount() > 0) {
return header("Location: admin.php");
}else {
return false;
}
} catch (PDOException $e) {
echo $e->getMessage();
}
}
public function login($uname, $umail, $upass) {
try {
$stmt = $this->db->prepare("SELECT * FROM users WHERE user_name=:uname AND user_email=:umail LIMIT 1");
$stmt->execute(array(':uname' => $uname, ':umail' => $umail));
$userRow = $stmt->fetch(PDO::FETCH_ASSOC);
if ($stmt->rowCount() > 0) {
if (password_verify($upass, $userRow['user_pass'])) {
$_SESSION['user_session'] = $userRow['user_id'];
return header("Location: home.php");
} else {
return false;
}
}
} catch (PDOException $e) {
echo $e->getMessage();
}
}`
的login.php
require 'app' . DIRECTORY_SEPARATOR . 'connection.php';
$test = new USER($DB_con);
if (isset($_POST['submit'])) {
$uname = $test->validate($_POST['uname']);
$umail = $test->validate($_POST['email']);
$upass = $test->validate($_POST['password']);
$test->login($uname, $umail, $upass);
}
,我不知道如何與管理功能總是重定向連接到home.php 和我不會重定向到不同頁面 用戶必須重定向到主頁 管理員必須重定向到管理頁面
按[php手冊](h ttp://php.net/manual/en/function.header.php)header return void因此替換'return true;'而不是'return header(「Location:home.php」);' – asissuthar
非常感謝。 但是我如何檢查重定向現在沒有得到任何東西 – Darina
你會做'if($ test-> login($ uname,$ umail,$ upass))header(...);' – krasipenkov