PHP を使用してポータルを開発していますが、ユーザーの資格情報に応じて特定のページへのアクセスを制限する単純な PHP 認証システムを実装する必要があります。
パラメータ(整数)を取る関数 CheckAuth() があります。つまり、私のデータベースには 1 ~ 5 の 5 つの認証レベルがあります。CheckAuth(3) を呼び出すと、ユーザーの認証レベルが 3 以上の場合に true が返されます。私のコードは今読んでいます:
if(!CheckAuth(3) {
die("Sorry, we were unable to deliver the requested content.");
}
このソリューションの問題点は、ページのフッターなどの他の要素が表示されないため、ページのレイアウトが崩れることです。
ページの一部のみを条件付きで表示する最良の方法は何ですか?
前もって感謝します!ダリオ
function CheckAuth() {
require("config.php");
//User ain't been logged in?
if(!isset($_SESSION["login"])) {
return 0;
}
//Alright user is logged in, lets check the level...
//1 = User, 2 = OP (or Admin)
$query = "SELECT * FROM delegations WHERE id=" . $_SESSION["login"];
$results = mysqli_query($con, $query);
while($row = mysqli_fetch_array($results)) {
return $row["Level"];
}
}