Visualizzazione dei risultati da 1 a 8 su 8

Discussione: [PHP] sessione

  1. #1

    [PHP] sessione

    Salve raga...
    ho una pagina index.php che contiene degli iframe...

    in uno di questi c'è moduletto per login...

    quando lo faccio setto alcune variabili in sessione tipo
    $_SESSION['loggato']=true;

    in altre pagine (protette) faccio

    $loggato = $_SESSION['loggato'];
    if ($loggato != true)
    {
    echo "NO DIRITTI";
    die();
    }

    tutto questo meccanismo funziona alla perfezione anche se molto semplice...

    il problema sorge quando faccio il logout, cioè in un frame chiamo logout.php che contiene session_destroy();

    Purtroppo però le variabili non perdono valore...
    Se provo a caricare una pagina protetta tutto funge perchè $loggato è true!!!

    Perchè?
    Possibile che sono i frame che danno impicci?

    Consigli?

  2. #2
    Nel mio caso siccome non volevo eliminare tutti i valori della sessione la pagina logout.php l'avevo strutturata nel seguente modo:

    <?php
    $_SESSION["loggato"]=FALSE;
    header("Location: index.php");
    ?>

    in pratica sei tu che imposti il valore di $_SESSION["loggato"]; puoi anche mettere però nel seguente modo (forse più corretto):

    <?php
    unset($_SESSION["loggato"]);
    header("Location: index.php");
    ?>

    A te la scelta di come ti è più comodo. Ciao!

  3. #3
    quando fai logout nella pagina di logout c'è all'inizio sessione_start?

    Poi prova ad aggiungere session_unset(); quindi a metterli entrambi:

    session_unset();
    session_destroy();

  4. #4

    ???

    ho scoperto che è un problema del server aruba... testando in locale il problema non persiste...

    come posso risolvere???

    index.php
    <?PHP
    session_start();
    $nome = $_SESSION['nome'];
    echo "nome = $nome";
    ?>

    login.php
    <?PHP
    session_start();
    $_SESSION['nome'] = "LUCA";
    ?>

    logout.php
    <?PHP
    session_start();
    session_destroy();
    ?>

    su aruba se faccio sequenza:
    index
    login
    logout
    index
    in index mi esce nome = LUCA

    in locale esce var non definita

    Consigli?

  5. #5
    metti session_unset. Io cmq su aruba ad usare quelle funzioni non ho problemi

  6. #6
    prova a mettere così

    logout.php
    <?PHP
    session_start();
    unset($_SESSION['nome']);
    session_destroy();
    ?>

    forse se glielo espliciti direttamente te lo accetta

  7. #7

    non va

    raga non va... anche io su aruba fino a qualchegiorno fa lavoravo tranquillamente...

    porca miseria

    consigli?

  8. #8
    Prova a mandare una mail ad aruba per chiedere spiegazioni. Se leggi sul forum per il momento non sei l'unico ad avere problemi di "compatibilità" con aruba; ho appena letto in un topic che alcuni hanno problemi di invio mail con la funzione mail()

    Speriamo che ti rispondano presto...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.