Sessione e array per utenti

luigi777

Utente Attivo
14 Feb 2008
1.086
1
38
42
Massa, Italy
Salve, ho un campo nel db chiamato admin in uno intero.
Ora ho fatto una funzione :
PHP:
<?php
function administrator($login)
{
    if(!isset($_SESSION['login']))
    {
        header("location: /index.php");
    }else
    {
        if($_SESSION["admin"] == $login[0] or $_SESSION["admin"] == $login[1] or $_SESSION["admin"]==$login[2])
        {

 
        }else{
            redirect("login.php", 1);
            exit;
        }
    }
    return array($login);
}?>

e che la usa cosi:
PHP:
<?php
session_start();
include($_SERVER['DOCUMENT_ROOT'].'/inc.php');

$login = array(0,1,2);

administrator($login);

include('theme/header.php');
?>

<h1>Welcome <?php echo ucfirst($_SESSION['first_name']); ?></h1>
<?php echo $_SESSION["admin"]; ?>
<a href="logout.php?logout=true">Logout</a>
<?php
include('theme/footer.php');

Ma non capisco come recuperare i valori e metterli nella sessione al fatto che io prendo alla parte del login in questo modo:
PHP:
if(isset($_POST['submit']))
{
    if(isset($_POST['email'],$_POST['password']) && !empty($_POST['email']) && !empty($_POST['password']))
    {
        $email = trim($_POST['email']);
        $password = trim($_POST['password']);

        if(filter_var($email, FILTER_VALIDATE_EMAIL))
        {
            $sql = "select * from members where email = :email ";
            $handle = $pdo->prepare($sql);
            $params = ['email'=>$email];
            $handle->execute($params);
            if($handle->rowCount() > 0)
            {
                $getRow = $handle->fetch(PDO::FETCH_ASSOC);
                if(password_verify($password, $getRow['password']))
                {
                    unset($getRow['password']);
                    
                    $_SESSION = $getRow;
                    
                    $_SESSION["login"] = TRUE;

                    redirect("home.php", 2);
                    
                    exit();
                }
                else
                {
                    $errors[] = "Wrong Email or Password";
                }
            }
            else
            {
                $errors[] = "Wrong Email or Password";
            }

        }
        else
        {
            $errors[] = "Email address is not valid";
        }

    }
    else
    {
        $errors[] = "Email and Password are required";
    }

}
?>
sapete dirmi che cosa devo fare il modo che io possa mettere ogni tanto tipo:
Codice:
administrator(1,2,3)
administrator(2,3)
administrator(3)
administrator(1)

e per un sito personale non di grande cose .. ma non riesco ad capire come recuperare l'array anche se ho letto da qui:
grazie mille e buona settimana ed aspetto risposte.
 

Discussioni simili