Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    [sessioni] problema con refresh

    Riporto il codice che ho inserito nella pagina del login:

    <?php
    session_start();
    if (!isset($_SESSION['username']))
    {
    session_unset();
    session_destroy();
    header("parent.main.location: ../login.htm");
    header("location: ../menu.htm");
    }
    else {....

    alla prima chiamata la pagina reagisce correttamente,
    nel senso che viene riconosciuta l'esistenza di $_SESSION['username'] e quindi viene eseguito il corpo
    dell'ELSE.
    Ma ciò non avviene quando si fa un refresh, cioè viene eseguito il corpo del THEN quindi sta a significare che la variabile $_SESSION['username'] non esiste più, pur rimanendo aperta la sessione(ho controllato in tmp)
    cosa che proprio non riesco a capire!!

    grazie.

  2. #2
    MICA NELL'ELSE HAI MESSO UN SESSION_DESTROY OPPURE UN COMANDO CHE UNSETTI LA VARIABILE SESSIONE?
    Il 90% dei problemi di un pc si trova
    tra la tastiera e la sedia.

  3. #3
    [supersaibal]Originariamente inviato da hacker_nait
    MICA NELL'ELSE HAI MESSO UN SESSION_DESTROY OPPURE UN COMANDO CHE UNSETTI LA VARIABILE SESSIONE? [/supersaibal]

    No, è semplice codice html.

  4. #4
    io uso questo metodo:

    nel config.inc.php ho questa stringa:

    Codice PHP:
    if (!isset($_SESSION['username'])) {
    $loggato 0;
    } else {
    $loggato 1; } 
    in ogni pagina includo config.inc.php e poi faccio questo controllo:
    Codice PHP:
    require("config.php");
    if (
    $loggato == 0) {
    header("Location: login.php?pagina=".$_SERVER['PHP_SELF']); die();

    anche a me dava quel problema di non mantenere le sessioni, ho risolto sbloccando i cookies in internet explorer: Strumenti -> Opzioni internet -> Privacy -> Abbassa la barra al minimo.

    Il 90% dei problemi di un pc si trova
    tra la tastiera e la sedia.

  5. #5
    Ok ora provo...

  6. #6
    Niente, stesso identico risultato,
    cioè aggiornando la pagina non mi riconosce più.
    Ho provato a controllare i cookies, utilizzando firefox
    sono settati in modo da rimanere fino alla scadenza,
    ed infatti rimangono.

    Una domanda, ma se l'utente biene riconosciuto
    non abilitato, e faccio eseguire comunque la distruzione della
    sessione in questo modo:

    session_unset();
    session_destroy();

    comporta qualcosa di errato o al massimo non fa niente?

  7. #7
    se non è registrata la sessione, redirecta direttamente sulla pagina del login senza unsettare e distruggere la sessione...

    (una domanda: hai messo session_start() ad ogni pagina?)
    Il 90% dei problemi di un pc si trova
    tra la tastiera e la sedia.

  8. #8
    [supersaibal]Originariamente inviato da hacker_nait
    se non è registrata la sessione, redirecta direttamente sulla pagina del login senza unsettare e distruggere la sessione...

    (una domanda: hai messo session_start() ad ogni pagina?) [/supersaibal]
    Si si è presente in ogni pagina che intendo proteggere.

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 © 2025 vBulletin Solutions, Inc. All rights reserved.