Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it L'avatar di deleted_id_48586
    Registrato dal
    Nov 2002
    Messaggi
    1,732

    Come leggere i dati di una session?

    stò smanettando con COOKIE e SESSION di php e vorrei sapere come faccio a leggere, in un pagina php, la presenza o meno di una session creata in'altra pagina di autenticazione.

    Si insomma l'ho fatto con i cookie che se "userid" e "pw" sono corretti setto un determinato cookie e nella seconda pagina invece c'è uno script che mi accetta solo se il cookie è presente quindi se ho fatto il login corretto ... e funziona.

    Ma con le session come faccio? sono un pò confuso.


  2. #2
    Molto semplicemente puoi guardare se la sessione è vuota o no...

    Codice PHP:
    session_start();

    $sessione $_SESSION['sessione'];

    if (
    $sessione == "")
    {
    //sessione vuota
    }
    else
    {
    //sessione non vuota


  3. #3
    Utente di HTML.it L'avatar di deleted_id_48586
    Registrato dal
    Nov 2002
    Messaggi
    1,732
    Grazie non sò perchè non c'ero arrivato

    Pura curiosità:

    Se uno volesse fare un area riservata con autenticazione senza DB quale sarebbe il modo migliore di gestire gli accessi? cookie o sessioni?

  4. #4
    inseme
    Chiamatemi sven se volete non ho voglia di fare una nuova email per una nuova registrazione xD
    Mac Future User , Ventilatore for PC Cooler user , - dry is coming -

  5. #5
    Utente di HTML.it L'avatar di deleted_id_48586
    Registrato dal
    Nov 2002
    Messaggi
    1,732
    ovvero?

  6. #6
    1°:
    Codice PHP:
    if( session_is_registered("nome_sessione") )
    {
     echo 
    "registrata";
    }
    else
    {
     echo 
    "non registrata";


    2°:
    cookies e sessioni.
    Guarda questo script mio.
    Codice PHP:
    // Se la sessione di login non esiste proseguiamo avanti

    if ( !session_is_registered("nome_sessione") )
    {
        
    // Se esistono i cookies controlliamo se è possibile il login automatico
        
        
    if ( isset( $_COOKIE["id"] ) && isset( $_COOKIE["password"] ) )
        {
            
    // Selezioniamo ed estraiamo i dati necessari
            
            
    $query mysql_query("SELECT campi FROM tabella WHERE id='".$_COOKIE['id']);
            
            
    $result mysql_fetch_rows($query);
            
            
    // Se il risultato è positivo ci loggiamo
            
            
    if ( $result )
            {
                
    session_register("logged");
            }
        }

    Richiami questa funzione nella pagina principale o in tutte le pagine e poi basta fare:
    Codice PHP:
    if ( session_is_registered"nome_sessione" ) )
    {
     echo 
    "loggato";
    }
    else
    {
     echo 
    "non sei loggato";



  7. #7
    Senza usare un database...Mi sembra piuttosto difficile e ciò comporta molti svantaggi!

    Utilizzare le sessioni unicamente è impossibile perchè chiudendo la finestra le informazioni scompaiono! Quindi puoi usarle solo dopo aver loggato!

    I cookie sarebbe la soluzione....Uno si registra li viene inserito il cookie e nel momento del login viene controllato se il cookie è presente!

    Ci sono però molti svantaggi!

    Non c'è modo di controllare le informazioni degli utenti!
    Il cookie potrebbe essere cancellato...

    Più molti altri svantaggi che adesso non mi vengono in mente!

  8. #8
    Utente di HTML.it L'avatar di deleted_id_48586
    Registrato dal
    Nov 2002
    Messaggi
    1,732
    Originariamente inviato da chiamatekatia
    Senza usare un database...Mi sembra piuttosto difficile e ciò comporta molti svantaggi!

    Utilizzare le sessioni unicamente è impossibile perchè chiudendo la finestra le informazioni scompaiono! Quindi puoi usarle solo dopo aver loggato!

    I cookie sarebbe la soluzione....Uno si registra li viene inserito il cookie e nel momento del login viene controllato se il cookie è presente!

    Ci sono però molti svantaggi!

    Non c'è modo di controllare le informazioni degli utenti!
    Il cookie potrebbe essere cancellato...

    Più molti altri svantaggi che adesso non mi vengono in mente!
    si beh la mia era solo una curiosità ... effettivamente non mi ricordavo che chiudendo la finestra la session venisse cancellata.

    Un'ultima info ma come si fà a cancellare automaticamente tutti i file di sessione che mi vengono creati nella cartella tmp?

    Per settare un cookie senza limiti di tempo basta non dichiarne la durata?

  9. #9
    Se vuoi eliminare una determinata sessione:

    Codice PHP:
    unset($_SESSION['sessione']); 
    Se invece vuoi eliminarle tutte credo che devi usare questo:

    Codice PHP:
    $_SESSION = array(); 
    Per settare un cookie senza limiti di tempo basta non dichiarne la durata?
    Si'!

  10. #10
    1°:
    // Desetta tutte le variabili di sessione.
    session_unset(); // oppure $_SESSION = array();
    // Infine distrugge la sessione.
    session_destroy();


    2°:
    devi fare qualcosa tipo time()+86400*1000. Così dura per 1000 giorni.

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.