Visualizzazione dei risultati da 1 a 10 su 10

Discussione: utilizzo sessioni

  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2006
    Messaggi
    12

    utilizzo sessioni

    ultimamente mi capita sempre più spesso di lavorare su server che utilizzano una versione PHP che non supporta le sessioni.
    $_SESSION non funziona e perde i dati tra una pagina e l'altra, e devo utilizzare $_REQUEST
    il problema è che comunque anche $_REQUEST perde i dati tra una pagina e l'altra.....
    Voi come risolvete il problema????
    grazie mille

  2. #2
    le versioni di php supportano le sessioni da lunga data. Forse il problema e' nella configurazione del php.ini oppure in un modo errato di gestire la sessione stessa.

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

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2006
    Messaggi
    12
    ti faccio un esempio. Io ho sempre utilizzato:

    session_start();
    $_SESSION['user'] = $user;
    $_SESSION['pass'] = $pass;

    ( i dati arrivano da un form <form action="admin.php" method="post" enctype="application/x-www-form-urlencoded">)

    Restava valido ogni volta che si ricaricava la pagina.....
    sul mysql di Aruba va.....
    ma su altri no, e facendo un echo delle variabili risultano vuote....

    se cambio $_SESSION con $_REQUEST funziona, ma solo una volta poi le variabili di nuovo si svuotano....

    come mai?
    grazie

  4. #4
    Prova con phpinfo() a vedere le impostazioni dell'installazione di php...
    c'è una tabella solo per le sessioni.

  5. #5
    Scusate se mi intrometto, avete visto l'ultimo mio post su problemi con le sessioni?
    Mi sono accorto che le pagine salvate in utf-8 danno problemi, lo stesso script salvato in ANSI funziona benissimo.
    Qualcuno sa come spiegare questo fatto? e soprattutto risolverlo?

  6. #6
    Originariamente inviato da lauraben
    ti faccio un esempio. Io ho sempre utilizzato:

    session_start();
    $_SESSION['user'] = $user;
    $_SESSION['pass'] = $pass;

    ( i dati arrivano da un form <form action="admin.php" method="post" enctype="application/x-www-form-urlencoded">)

    Restava valido ogni volta che si ricaricava la pagina.....
    sul mysql di Aruba va.....
    ma su altri no, e facendo un echo delle variabili risultano vuote....

    se cambio $_SESSION con $_REQUEST funziona, ma solo una volta poi le variabili di nuovo si svuotano....

    come mai?
    grazie
    nulla centra la sessione, ma piuttosto che da una parte hai register_globals in ON e dall'altra in OFF (come dovrebbe essere) quindi i dati li devi recuperare con:

    session_start();
    $_SESSION['user'] = $_POST['user'];
    $_SESSION['pass'] = $_POST['pass'];

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

  7. #7
    Utente di HTML.it
    Registrato dal
    Mar 2006
    Messaggi
    12
    sai che ho rpovato anche così ma non funziona ... le variabili risultano vuote..... solo con $_REQUEST resta il valore.....grazie
    ciao

  8. #8
    Originariamente inviato da lauraben
    sai che ho rpovato anche così ma non funziona ... le variabili risultano vuote..... solo con $_REQUEST resta il valore.....grazie
    ciao
    $_REQUEST e' una variabile "auto globale" o superglobale, che dir si voglia, che non fa altro che prendere le variabili passate con POST, GET e COOKIE, quindi se le prende "isso" e' perche' le variabili ci sono.... o in POST, o in GET o nel cookie. La differenza e' che i singoli POST, GET e COOKIE non sono "auto globali".

    Personalmente $_REQUEST non piace perche' fa di tutta l'erba entrante un fascio superglobale, mentre quello che devo prendere e come prendere lo vorrei decidere io. Anyway, se c'e' e' perche' qualcuno lo usa.

    Tornando alle tue sessioni ... utilizzi forse queste variabili in una funzione???

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

  9. #9
    Utente di HTML.it
    Registrato dal
    Mar 2006
    Messaggi
    12
    no, le variabili non sono in una funzione, ma vengono controllate all'inizio della pagina, ogni volta che si ricarica.
    Essendoci la sessione dovrebbero essere sempre attive.....no? invece risultano vuote....grazie mille x il tuo aiuto

  10. #10
    Originariamente inviato da lauraben
    no, le variabili non sono in una funzione, ma vengono controllate all'inizio della pagina, ogni volta che si ricarica.
    Essendoci la sessione dovrebbero essere sempre attive.....no? invece risultano vuote....grazie mille x il tuo aiuto
    diciamo che a questo punto non capisco piu' che fai ....

    Se vuoi vedere se le sessioni sono attive, verifica se esiste il file di sessione e se esiste, se e' valorizzato. Per sapere qual'e' il file che utilizza la tua sessione puoi semplicemente stampare il session_id e verificare il valore reso.

    Es:

    Codice PHP:
    session_start();

    echo 
    session_id(); // stampa l'id di sessione

    if(isset($_SESSION)) {

            
    print_r($_SESSION);

            } 
    se l'id di sessione dovesse cambiare ogni volta significa che per qualche ragione non valorizzi alcuna sessione.

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

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.