Вот моя форма для входа. aka index.phpВеб-сайт Переадресация, если вы не авторизованы
<form class="form-3" action="login.php?log=ok" method="post" >
<input type="text" name="username" id="login" placeholder="Username">
<input type="password" name="password" id="password" placeholder="Password">
<input type="submit" name="submit" value="Submit">
</form>
И вот моя проверка входа. ака login.php
<?php
require_once 'classes/Personel.php';
$personel = new Personel();
$personel->setUsername($_POST['username']);
$personel->setPassword($_POST['password']);
$personel->login();
header("Location: index.php");
// REDIRECT
session_start();
if (strcasecmp($personel->getRole(), "LTO") == 0 ) {
$_SESSION['role'] = "LTO";
$_SESSION['personel'] = $personel;
header("Location: LTO");
}else if(strcasecmp($personel->getRole(), "LTFRB") == 0){
$_SESSION['role'] = "LTFRB";
$_SESSION['personel'] = $personel;
header("Location: LTFRB");
}else if(strcasecmp($personel->getRole(), "LGU") == 0){
$_SESSION['role'] = "LGU";
$_SESSION['personel'] = $personel;
header("Location: LGU");
}else if(strcasecmp($personel->getRole(), "ADMIN") == 0){
$_SESSION['role'] = "ADMIN";
$_SESSION['personel'] = $personel;
header("Location: admin");
}
?>
теперь, когда я пытаюсь получить доступ к любому из них счета я могу легко открыть его index page
и другие страницы даже i'am не войти в систему. Как я могу это запретить? и как я могу избежать перезаписи URL?
например. страница индекс администратора
попытке открыть мой link правильный счет админ-администратора и попробуйте неправильный ..
Большое спасибо заранее.
Почему вы вызываете заголовок ("Location: index.php") без каких-либо условий? Это означает, что вы всегда перенаправляетесь на index.php. – Yani
Вы сохранили перенаправление на index.php вне любого условия. Я не вижу, как ваш код сеанса может работать! Кроме того, что делает '$ personel-> login()' делает? Он перенаправляет куда-нибудь? – Tzar
@Tzar Когда я пытаюсь ввести правильные учетные записи. я перехожу на ожидаемую страницу. Хотя, если я пытаюсь ошибаться, он остается с index.php, поэтому я думал, что это правильно – AndroidNewbie