我想,當用戶註銷時,顯示彈出消息,所以我用PHP的回聲JavaScript的alert()不工作
echo "<script>alert(\"You are logged out\");</script>";
但它不工作。
以下是我的編碼。我的編碼有沒有邏輯問題?
<?php
session_start();
if(isset($_SESSION['Username']) == "admin")
{
?>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<style type="text/css">
@import "../CSS/Style.css";
@import "../CSS/Admin.css";
</style>
<title>Admin Home Page</title>
</head>
<body>
<div class="body"></div>
<?php
if(isset($_GET['id']) == "logout")
{
session_destroy();
echo "<script>alert(\"You are logged out\");</script>";
header("Location: ..\Main.php");
}
else
{
?>
<div class="menu">
<a href="ManageStaff.php">Manage Staff</a>
</div>
<div class="menu2">
<a href="ManageAccount.php">Manage Account</a>
</div>
<div class="logout">
<a href="AdminHomePage.php?id=logout">Logout</a>
</div>
<?php
}
}
else
{
?>
<center>
<p style="font-size:50px; font-weight:bold">Access Denied</p>
<p style="font-size:18px">Your request for this page has been denied because of access control</p>
</center>
<?php
}
?>
</body>
</html>
會話將被銷燬,也將重定向到Main.php,只是alert()
不會出來。
首先,你沒有使用'isset()函數'正確[文件](HTTPS ://php.net/manual/en/function.isset.php)]。其次,在發送輸出後你不能使用'header()'。同樣,這在php文檔中明確說明:https://php.net/manual/en/function.header.php。最後,假設你可以,你如何期望你的代碼工作?你不能混用PHP和Javascript;如果你使用PHP來重定向用戶,這將發生在任何事發送給用戶之前,因此JavaScript警報永遠不會觸發。你真的需要多考慮一下你的解決方案。 –
'isset'只會返回'true'或'false'。 –