Pagina 10 di 20 primaprima ... 8 9 10 11 12 ... ultimoultimo
Visualizzazione dei risultati da 91 a 100 su 198

Discussione: [PILLOLA] sessioni

  1. #91
    Non ho guardato il tuo codice, ma non è assolutamente come dici:
    ogni utente genera una sessione (e un file di sessione)diversi, addirittura ogni nuova finestra del browser sulla stessa macchina (se i cookie sono temporanei e se la finestra non proviene da un link con target _blank) genera una sessione diversa
    per favore NIENTE PVT TECNICI da sconosciuti

  2. #92
    ti dico che ho provato... e la seconda volta che apro in una nuova finestra mi fa entrare senza loggarmi...
    HO riprovato anche adesso per scrupolo
    provalo... poi mi dici.
    GRAZIE
    «Se leggi dimentichi, se vedi capisci, se fai impari» Piaget

  3. #93
    Nel php.ini cosa c'è alla voce

    session.cookie_lifetime = ?

    Prima di tentare come secondo utente hai chiuso e riaperto il browser?
    In alternativa hai provato a cliccare su aggiorna? Non è che si tratta di una questione di cache?

    Adesso guardo il codice, ma ti ripeto, ogni nuovo navigatore crea un nuovo file di sessione al quale può accedere lui soltanto. Guai se non fosse così
    per favore NIENTE PVT TECNICI da sconosciuti

  4. #94
    Originariamente inviato da Fabio Heller
    ti ripeto, ogni nuovo navigatore crea un nuovo file di sessione al quale può accedere lui soltanto. Guai se non fosse così
    Lo spero proprio...

    La finestra non la richiudo... dipende da quello allora...
    Apro 2 finestre, ma sono aperte assieme...

    Pensavo che impostando una variabile di sessione tipo $nome poi fosse uguale per tutti... grazie, non sai quanto mi consoli.

    Cmq provalo, grazie.
    «Se leggi dimentichi, se vedi capisci, se fai impari» Piaget

  5. #95
    Ciao, potete dare un'occhiata qui ? ve ne prego, a quanto pare non mi funziona $_SESSION
    «Se leggi dimentichi, se vedi capisci, se fai impari» Piaget

  6. #96

    ragazzi

    mi stò avventurando in questo mondo delle sessioni. Ma esiste un buon libro a parte gli appunti che tratta le sessioni in php????
    grazie ciao
    Ma sarà..... ma io ci credo poo....

  7. #97
    Utente di HTML.it L'avatar di chris
    Registrato dal
    Sep 1999
    Messaggi
    1,568
    credo che il sempre ottimo "PHP 4 guida per lo sviluppatore" le tratti abbastanza bene
    "Nei prossimi tre anni col mio governo vogliamo vincere anche il cancro, che colpisce ogni anno 250.000 italiani e riguarda quasi due milioni di nostri concittadini"

  8. #98

    Re: [PILLOLA] sessioni

    Originariamente inviato da kuarl
    Salve a tutti
    Mentre lavoravo ad un mio progetto (in php ovviamente) ho dovuto documentarmi un bel po' sulle sessioni (ringrazio tutti su questo forum per avermi aiutato ) e mi sono accorto alla fine che sono uno strumento davvero potente! Ho deciso quindi di scrivere questa "pillola" sul loro funzionamento e il loro utilizzo. Spero vi sia d'aiuto

    1. Cosa sono le sessioni
    Un Grande problema degli sviluppatori su internet è sempre stato quello di tener traccia di un utente. Il problema principale in effetti è che l'utente nel momento in cui richiede una pagina ad un server web, apre una connessione, riceve la pagina e le eventuali immagini o file inclusi in essa, dopodiché la connessione viene chiusa! Questo meccanismo si ripete ad ogni richiesta di pagina che voi fate anche in questo momento, su questo stesso forum!
    Di soluzioni con un po’ di ingegno ce ne sono, all’inizio la soluzione più ovvia era quella di riconoscere l’utente tramite l’indirizzo IP, ma non è una soluzione sicura… infatti alcuni provider internet forniscono l’accesso alla rete tramite un server proxy, un server proxy è un intermediario fra il client e il server, fisicamente la richiesta di una pagina viene fatta dal proxy e non dal client, una volta completata il proxy poi farà girare il tutto e lo manderà al client. Questo è un problema, in questo modo il server può concludere che più richieste di pagine fatte da uno stesso indirizzo IP appartengono allo stesso utente, ma non è così.
    Un’altra soluzione più sicura era quella di immettere delle variabili nascoste nelle pagine, solitamente infatti la navigazione in un sito avviene seguendo un URL o un(a) form. Si aggiungeva un ID univoco a entrambi i metodi in questo modo:

    <a href=”pagina1.php?sID=adffkkADFFX223454DDAdadffd”> clicka e godi</a>(saibal ®)

    oppure aggiungendo questo tag in un(a) form:

    <input type=”hydden” name=”sID” value=” adffkkADFFX223454DDAdadffd”>

    In ogni pagina si controlla l’esistenza della variabile $sID, se impostata si riconosceva l’utente.
    C’è anche una funzione utile per generare un ID univoco ed è
    uniqid(string $prefisso)
    essa genera un ID univoco, se viene passato un prefisso, l’id univoco sarà preceduto da questo prefisso.
    Cosa c’è di sbagliato?? Niente, funziona perfettamente, ma voi siete sicuri che in ogni pagina, ogni url, ogni form sia dotato di questa variabile speciale?? Siete sicuri che non ve ne sia sfuggito qualcuno??
    Una soluzione elegante è invece l’utilizzo dei cookie, memorizzare il sid di sessione in un cookie, lavora in modo silenzioso e lo sviluppatore conosce in ogni momento il contenuto di quel cookie (se esiste). Purtroppo però c’è ancora gente che si ostina a non aggiornare i browser, infatti i cookie non sono sempre esistiti. C’è anche gente che ha la testa piena di quelle boiate sulla privacy che i giornali dicono dei cookie, ma questo è un altro discorso. L’unica funzione necessaria per servirsi dei cookie è
    Setcookie()
    L’argomento ‘cookie’ è stato già trattato molte volte, se vi servono maggiori informazioni fate una ricerca.
    Nell’ultima versione di php4 però si è voluto ovviare (anche un po’ in ritardo rispetto agli altri) a questo problema introducendo le sessioni.
    Tutto un arsenale di funzioni legate alle sessioni è stato introdotto, elencarle tutte non sarebbe molto pratico, inoltre, se avete bisogno di questo, c’è sempre il manuale ondine: www.php.net. Il loro funzionamento è semplice, controllano se il client ha abilitato i cookie, se si utilizza i cookie nel modo sopra descritto, altrimenti utilizza il metodo della variabile nascosta, la variabile quindi sarà aggiunta in ogni pagina quindi. E’ possibile memorizzare delle variabili di sessione che si vanno a posizionare in una posizione ben precisa sul server.

    2. Come creare una sessione
    Per creare una sessione basta semplicemente chiamare la funzione
    Session_start()
    Non prende argomenti, spiegare il funzionamento di questa funzione (molto complessa) sarebbe troppo lungo, l’unica nota è che se la sessione è stata aperta precedentemente, una nuova chiamata a questa funzione farà riaprire la vecchia sessione.
    3. Le variabili di sessione
    E’ possibile memorizzare da una parte sul server alcune variabili personali dell’utente di cui si vuol tenere traccia, l’uso di troppi cookie è poco elegante senza contare i sopraccitati problemi legati ai cookie. Questo procedimento avviene utilizzando la funzione session_register() facendone il seguente utilizzo:
    $var = 1;
    session_register(‘var’);

    In questo modo la variabile $var verrà memorizzata fra le variabili di sessione. Attenzione: il parametro da passare alla funzione deve essere obbligatoriamente una stringa, bisogna inserire il nome della variabile a cui fa riferimento senza il simbolo $ davanti.
    Il tipo della variabile passata alla funzione session_register() può essere anche un array o un oggetto. Non ha importanza.
    E’ possibile accedere alle variabili di sessione tramite la variabile speciale $_SESSION[] o direttamente tramite il nome della variabile, nel caso precedente con $var.
    Esiste anche un modo per verificare se una variabile di sessione è stata impostata, si utilizza la funzione:
    session_is_registered(‘var’)
    Restituisce vero se è settata, falso se non lo è.
    E’ possibile cancellare una singola variabile di sessione utilizzando la funzione
    Session_unregister(‘var’)
    O tutte in una volta utilizzando la funzione:
    session_unset()
    3. Chiusura di una sessione
    La sessione, per impostazione predefinita, termina alla chiusura del browser, per alcuni può essere un inconveniente, tuttavia è possibile cambiare a piacimento la scadenza del cookie con la funzione:
    session_set_cookie_params($durata, $percorso, $dominio, $sicurezza)
    il funzionamento dei parametri è identico a quelli che si utilizzano per i cookie, tranne il fatto che qui viene espressa la durata del cookie e non la scadenza!! Fate attenzione!! In un cookie quando si impostava la scadenza era solito mettere time() + 86400 se il cookie doveva durare un giorno, qui va SOLO 86400.
    4. Distruzione di una sessione
    La sessione tuttavia rimane memorizzata nella memoria del server se la sessione è ancora aperta (se come sopra settate un cookie destinato a durare svariati giorni). E’ possibile cancellare l’intera sessione con tutte le variabili correlate. Quindi:
    session_destroy()
    non prende parametri. La sessione ovviamente deve essere aperta per poter essere cancellata.
    5. Funzioni aggiuntive
    Esistono delle funzioni aggiuntive che possono tornare utili:
    session_id($new_ID)
    restituisce il sid di sessione, se viene passato l’univo parametro, il sid viene sostituito con quello passato.
    Session_name($nome)
    Restituisce il nome della sessione, per defalut ‘PHPSESSID’, se viene passato un parametro tuttavia è possibile rinominarlo. Esso sarà il nome della variabile speciale o del cookie.
    Session_encode()
    Questa funzione è un po’ particolare ma molto utile, serializza l’intera sessione in una stringa in modo da poter essere salvata su un database o file di testo ed essere recuperata successivamente con la funzione
    Session_decode($stringa)

    Credo basti, per ogni eventuale domanda chiedete qui sono a vostra disposizione.

    Byez



    Scusatemi!!!
    io non riesco a raccogliere la variabile nella pagina successiva, ho fatto questo:


    Pagina ---> invia.php
    <? $_SESSION['Messaggio']="Ciao!!!"; ?>

    Pagina ---> visualizza.php
    <? echo $_SESSION['Messaggio']; ?>

    ma devo fare qualcosa per passare le variabili da una pagina all'altra ???

  9. #99
    Ciao, hai messo session_start() all'inizio di ogni pagina in cui usi le sessioni?
    per favore NIENTE PVT TECNICI da sconosciuti

  10. #100
    Si.....
    Scusate sono un tonno io......

    ho la versione di PHP 4.0.1........

    ho provato con il PHP 4.2.0 e funziona benissimo....

    Grazie !!!

    Ciao.

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.