Я попытался сделать так, чтобы при входе на веб-сайт он ссылался на тип учетной записи в базе данных и, в зависимости от типа, устанавливал переменную сеанса, а затем связывал вас с соответствующим страница, которая будет работать с этим логином сеанса. Проблема, с которой я сталкиваюсь, заключается в том, что независимо от того, что он просто отправляет меня обратно на страницу входа в систему, что должно происходить только для условия else, для которого тип пользователя не обнаружен. Я использую базу данных Oracle APEX, и я не уверен, почему это происходит, поэтому любая помощь будет принята с благодарностью.
<?php
//include connection to titan
include 'oci_connect.php';
session_start();
$query_str = "SELECT type_of_Account FROM User_Account WHERE user_name = '".$_POST["Username"]."' AND PASSWORD = ('".$_POST["Password"]."')";
$stid =oci_parse($connection, $query_str);
oci_execute($stid);
$type =$info['type_of_Account'];
if($type == "Customer")
{
$_SESSION['type']=1;
//redirect to user page where it will be found through matching the user id and only display their details, can only be accessed if logged in
echo '<script>window.location="user.php"</script>';
}
elseif($type == "Trader")
{
$_SESSION['type']=2;
//redirect to traders page where it will display the traders details and only theirs, only accessed if logged in with specific account type
echo '<script>window.location="trader.php"</script>';
}
elseif($type == "Admin")
{
$_SESSION['type']=3;
//redirect to admin page where they can view and edit all details, only one account type acceptable
echo '<script>window.location="admin.php"</script>';
}
else {
//Return to login page as login details are invalid
echo '<script>window.location="login.html"</script>';
}
?>
Это моя страница пользователя, которая предназначена для сеанса 1:
<?php
session_start();
if($_SESSION['type']!=1){
echo '<script>window.location="login.html"</script>';
}
?>
Это моя страница трейдеров, которая предназначена для сессии 2:
<?php
session_start();
if($_SESSION['type']!=2){
echo '<script>window.location="login.html"</script>';
}
?>
Это моя страница администратора, которая предназначена для сессии 3:
<?php
session_start();
if($_SESSION['type']!=3){
echo '<script>window.location="login.html"</script>';
}
?>
Задача ещё не решена.
Других решений пока нет …