Visualizzazione risultati 1 fino 3 di 3

Discussione: [PHP] Problema con WWW-Auth

  1. #1
    Guest

    Post [PHP] Problema con WWW-Auth

    Ciao a tutti, ho un problema con l'autenticazione via HTTP in locale: in pratica non riesco a fare il logout! Questo è il codice:
    $login["user"] e $login["pass"] contengono solo l'hash md5 (criptato )
    Codice PHP:
    $_SESSION["login"] = (empty($_SERVER["PHP_AUTH_USER"]) || empty($_SERVER["PHP_AUTH_PW"])) ? false : true;

    if(
    $_SESSION["login"] == false || empty($_SESSION["login"]) || !$_SESSION["login"]) {
    if (isset(
    $_SERVER["PHP_AUTH_USER"]) && isset($_SERVER["PHP_AUTH_PW"]))
    {
    $user = md5($_SERVER["PHP_AUTH_USER"]);
    $pass = md5($_SERVER["PHP_AUTH_PW"]);

    if(
    $user == $login["user"] && $pass == $login["pass"])
    {
    $_SESSION["login"] = true;
    header("Location: index.php");
    }
    else
    {
    header("Location: index.php");
    }
    }
    else
    {
    header("WWW-Authenticate: Basic realm=\"Area Riservata\"");
    header("HTTP/1.0 401 Unauthorized");
    }
    }
    Il file viene incluso, tramite questo codice nell'index.php (prima di tutto):
    Codice PHP:
    <? session_start(); include("altro/security.php"); ?>
    Invece questo è il case "logout":
    Codice PHP:
    unset($_SESSION);
    unset(
    $_SERVER['PHP_AUTH_USER']);
    unset(
    $_SERVER['PHP_AUTH_PW']);
    #header("Location: index.php");
    In pratica voglio che mi cancelli user, pass e la sessione torni nulla, cancellata o false. Ma non funziona... dove sto sbagliando?
    Io mi loggo quando vado ad index.php e quando (ipoteticamente) dovrei cliccare su Logout quest'ultimo deve resettare tutto, fare il redirect a index.php dove poi security.php controlla se le variabili sono piene... qualora fossero vuote o altro deve avviare il login. Spero di essermi spiegato!
    Grazie mille!!
    Ultima modifica di sIM : 20-07-2010 alle ore 20.21.37

  2. #2
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,762

    Predefinito

    Adesso son di fretta; comunque io solitamente per eliminare le variabili di sessione uso la session_destroy() invece di quegli unset...

    prova...

    Ciao!

  3. #3
    Guest

    Predefinito

    Già provato ma non funge! =(

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •