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

    Creare più sessioni contemporaneamente

    Ciao a tutti!
    Non so se sia fattibile, ma si possono creare più sessioni contemporaneamente?
    Praticamente ho un sito con un login, e creo una sessione quando vi accedo.
    Una volta entrato, ho una pagina con un elenco di progetti a cui sto lavorando. Il problema è che alcuni di questi progetti hanno ulteriori aree riservate, coi rispettivi login.
    Se entro in queste aree e poi faccio il logout (con session_destroy()), purtroppo mi viene chiusa anche la sessione iniziale, quindi, per poter accedere ad un altro progetto, dovrei rifare di nuovo il login al sito principale.
    E' forse possibile creare un diverso session_id() per ogni login e "distruggere" la corrispondente session con il logout?

    sito principale --> login --> indice progetti:

    --> progetto 1 --> login --> area riservata
    --> progetto 2
    --> progetto 3 --> login --> area riservata

    Il fatto è che il mio sito (che uso per testare i miei progetti) e i progetti stessi, dovrebbero essere completamente indipendenti tra loro... mah...

    Grazie per l'aiuto!
    Mic
    Michele
    King Of The Kill

  2. #2
    non fai prima a dire se l'utente 1 è autorizzato allora mostra il progetto1? o.0

  3. #3
    puoi creare tutte le sessioni che vuoi, ma non usando quelle generate in modo automatico dal php. Quindi o gestisci tu le sottosessioni, oppure (che e' meglio) attribuisci un privilegio che permette accedere ad alcune pagine private. Il privilegio lo puoi sia riconoscere con il login sia con una ulteriore identificazione, ma meglio se definisci i privilegi subito al login.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  4. #4
    Non son sicuro di aver capito...
    In pratica potrei assegnare vari privilegi per esempio mettendo in un database tutti gli utenti abilitati a vedere i vari progetti; diciamo che per il login non ci son problemi.
    però per gestire il logout da ogni singolo progetto può andar bene ragionare in questo modo? Nella tabella dei vari utenti aggiungo una colonna "login" dove per ogni utente ho un 1 (se "loggato") o uno 0 (se non loggato) e, per accedere alle pagine, oltre a verificare utente e password, vado a vedere se è loggato... per funzionare credo funzioni, ma non son sicuro né che sia un procedimento pratico, né che sia il più pratico
    Altrimenti come si fa? Se faccio un logout "classico", mi si chiude anche la sessione iniziale, e son fregato...
    Michele
    King Of The Kill

  5. #5
    Se un utente e' autorizzato a fare una certa cosa ... perche' dovrebbe rilogarsi per una successiva richiesta di attivita'.... oppure slogarsi solo da un privilegio e non come user ????

    Esempio: mi connetto con privilegi di admin questi privilegi mi seguiranno finche' saro' con il mio log attivo. metti una colonna nella tabella che gestisce gli user che contenga i privilegi. Quando l'utente si connette al momento dell'identificazione leggi il privilegio associato e lo metti nel file di sessione. Dopo di che, quando verifichi le azioni da svolgere, ti baserai sul privilegio assegnato.

    es.: privilegio = 200 puo' leggere il breviario. Quando punta al breviario controllerai se il privilegio corrisponde a 200 se non lo e' ... niente lettura del breviario.... o anche meglio... se non ha il privilegio manco gli faccio vedere il link.

    ovviamente metterai il valore che ti pare per identificare un privilegio. Volendo puoi anche annullare il privilegio dopo che e' stato utilizzato semplicemente modificando il valore che avevi memorizzato in sessione. ma logarsi e rilogarsi ... abbandonerei immediatamente il sito se mi fosse richiesto.

    Diverso sarebbe una ulteriore conferma per fare azioni sensibili, come confermare con un pin una transazione...

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  6. #6
    In effetti così torna tutto... però dovrei modificare un bel po' di roba... (e lo faccio anche volentieri, neh? ).

    Solo una cosa: il mio sito è diciamo ad uso privato, quindi non è che devo avere gente che entra, verifica, fa cose, gira... Era solo un modo per pubblicare su internet diversi progetti in modo da non testarli soltanto in locale, pur mandenendo però una certa privacy (da qui il login iniziale, perchè si è pur sempre sul web...).

    L'idea era questa: mi connetto p.es. come "michele" nel mio sito principale.
    Trovo l'elenco dei miei progetti. Mi dico, vediamo se il "sito1" funziona a dovere!
    Bon, trovo il login, faccio finta di essere l'amministratore di questo nuovo sito e faccio il login con un altro username (p.es "cliente1"), perchè il mio cliente non è obbligato a chiamarsi michele anche lui e fin qua tutto ok, perchè vado a pescare i privilegi da un'altra tabella.
    Giro e ravano nell'area riservata, dopodichè mi dico (nelle veci del mio supposto cliente): dopo tutto questo navigare, facciamo il logout... ecco fatto... funziona tutto...
    Però io, "michele", mi ritrovo con la mia sessione iniziale scaduta, e non posso più testare il progetto3, per esempio...

    Speravo però che ci fosse una maniera per rendere i progetti indipendenti, tra loro e dal sito principale, modificando il meno possibile il codice php e mysq... per esempio dando un nome alle sessioni. Ad ogni progetto, la sua. In modo che poi, una volta completati, potessi pubblicarli senza dover rifare intere parti di codice ancora poi tutte da testare...
    Evidentemente non si può... pazienza...

    Mi gestirò i vari privilegi anzichè lavorare con le sessioni...
    Quindi grazie per i consigli!
    Michele
    King Of The Kill

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.