Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1

    sessioni in locale si, mentre on-line no!!!

    Salve a tutti !!

    Ci sono differenze di codice per il php dalla versione 4.3.0 alla 4.3.6 ???

    Nella fattispecie per quello che riguarda le sessioni???

    questo è il codice che uso:

    Codice PHP:
    <?php

    if (isSet($_POST['session_change_champ']))
    {        
            if(!isSet(
    $PHPSESSID))
            {
    $_SESSION['visualizer_champ'] = $_POST['select_champ'];}
            else 
            if (!
    $visualizer_champ)
            {
    $_SESSION['visualizer_champ'] = $_POST['select_champ'];}
            
    $suffixTABLE $_SESSION['visualizer_champ'];
    }
    else
    {
        if((isSet(
    $PHPSESSID)) || (isSet($_SESSION['visualizer_champ'])))
        {
    $suffixTABLE $_SESSION['visualizer_champ'];}
        else
        {
            if(!isSet(
    $PHPSESSID))
            {
            
    $_SESSION['visualizer_champ'] = "$DEFsuffixTABLE"
            }
            else if (!
    $visualizer_champ)
                {
                
    $_SESSION['visualizer_champ'] = "$DEFsuffixTABLE";
                }
        }

    $suffixTABLE $_SESSION['visualizer_champ'];            
    }

    ?>
    www.skorpiograph.com - [ PORTFOLIO ]
    ...se vuoi essere aiutato devi aiutare chi ti aiuta ad aiutarti!!!

  2. #2
    Ciao,
    le diferenze sono sempre le solite, ovvero che bisognerebbe ricordare che da quasi 3 anni register_globals dovrebbe essere disabilitato.

    Quindi anzichè $PHPSESSID , $_COOKIE['PHPSESSID']

    il controllo comunque non va bene, perchè se per caso i cookie non vengono supportati dà falso.

    Un controllo migliore sarebbe verificare che esista una variabile di sessione o al massimo che

    session_id() !== ''

    Anche qui c'è l'errore relativo a register_globals

    else if (!$visualizer_champ)
    {
    $_SESSION['visualizer_champ'] = "$DEFsuffixTABLE";
    }
    per favore NIENTE PVT TECNICI da sconosciuti

  3. #3
    Allora intanto grazie per il tuo intervento che è sempre ben accetto!!

    Poi ti volevo far sapere che io le sessioni non le ho proprio mai capite!!

    Quello che vorrei fare io è questo!!

    Allora ho un valore che prendo dal db con una precedente query a cui ad esempio assegniamo il valore di "A" e sarà un valore di default per tutti quelli che visiteranno il sito ok??

    Quindi verrà settata la sessione che prenderà temporaneamente quel valore!!

    Bene ora ad esempio tramite un form l'utente può scegliere altre 20 lettere + 1 che è quella di default (A ....ricordi??)....

    bene scegliendo la lettera "C" vorrei che la sessione ora venga settata sul valore di "C"

    non è molto complicato ma io sono duro e le sessioni proprio non le digerisco!!!

    mi aiuteresti???
    grazie
    www.skorpiograph.com - [ PORTFOLIO ]
    ...se vuoi essere aiutato devi aiutare chi ti aiuta ad aiutarti!!!

  4. #4
    Le sessioni non sono difficili: hai l'array $_SESSION che è come un serbatoio dove puoi mettere le variabili che non vuoi far scomparire al termine dello script e che quindi vuoi ritrovare

    Per rendere disponibile questo serbatoio (che poi è un array) devi prima chiamare *sempre* session_start() *in ogni pagina*, altrimenti il serbatoio non esiste.

    Quindi

    session_start() ;


    Poi


    - Come faccio a capire se ho attivato le sessioni (cioè se ho chiamato session_start())?

    isset($_SESSION) ;

    - come faccio a capire se il serbatoio esiste ed è vuoto?

    isset($_SESSION) && empty($_SESSION)

    - come faccio a capire se una variabile è presente nel serbatoio?

    isset($_SESSION['nomeVar'])

    - come faccio a mettere qualcosa nel serbatoio?

    $_SESSION['unNome'] = $unValore ;

    - come faccio a sovrascrivere un elemento già present enel serbatoio

    $_SESSION['nomeRiferimento'] = $nuovoValore ;

    - come faccio a svuotare il serbatoio?

    $_SESSION = array() ;

    - Come faccioa cancellare un elemento dal serbatoio

    unset($_SESSION['nomeRiferimento']) ;

    - come faccio a "spegnere" il sistema delle sessioni?

    $_SESSION = array() ;
    session_destroy() ;


    Tutto qui, ma prima setta register_globals a Off e poi dimenticati che queste tre funzioni esistono: session_register , session_unset, session_unregister
    per favore NIENTE PVT TECNICI da sconosciuti

  5. #5
    grazie mille e quindi devo modificare usando quello che mi hai detto prima giusto??

    Ma per logica (se funzionava ovvio ) il procedimento era giusto???

    Azz ho controllato ora e mi hanno messo le register_globals su ON!!!!

    me le faccio cambiare subito!!! seduta stante!!!

    grazie per ora!! eventualmente ti richiamo ok!!??

    ciauz!!
    www.skorpiograph.com - [ PORTFOLIO ]
    ...se vuoi essere aiutato devi aiutare chi ti aiuta ad aiutarti!!!

  6. #6
    Originariamente inviato da CeMax-2000


    Azz ho controllato ora e mi hanno messo le register_globals su ON!!!!
    Puoi ignorarle e far finta che siano su off, usa comunque solo gli array superglobali ($_GET, $_SESSION etc.etc)
    per favore NIENTE PVT TECNICI da sconosciuti

  7. #7
    [QUOTE]Originariamente inviato da CeMax-2000
    grazie mille e quindi devo modificare usando quello che mi hai detto prima giusto??
    [QUOTE]

    giusto

    Ma per logica (se funzionava ovvio ) il procedimento era giusto???
    Ho letto in fretta, ma cercherei..se possibile..di annidare meno if
    per favore NIENTE PVT TECNICI da sconosciuti

  8. #8
    Originariamente inviato da Fabio Heller
    Ho letto in fretta, ma cercherei..se possibile..di annidare meno if
    infatti ti sarebbe possibile ittimizzarlo al meglio??? sempre se trovi 5 minuti liberi ....ovvio!!!

    Puoi ignorarle e far finta che siano su off, usa comunque solo gli array superglobali ($_GET, $_SESSION etc.etc)
    tanto me lo haaano già cambiato!!
    www.skorpiograph.com - [ PORTFOLIO ]
    ...se vuoi essere aiutato devi aiutare chi ti aiuta ad aiutarti!!!

  9. #9
    codice:
    function ricavaLettera()
    {
        //prelevo dal database
    
        return $lettera ;
       
    }
    
    session_start() ;
    
    if( !isset($_SESSION['lettera'] )
    {
    
        $_SESSION['lettera'] = ricavaLettera() ;
    
    } 
    
    if(!empty($_POST['lettera']))
    {
    
        $_SESSION['lettera'] = $_POST['lettera'] ;
    
    }
    per favore NIENTE PVT TECNICI da sconosciuti

  10. #10
    ok grazie Fabio !!! a buon rendere!!!

    solo una nota!!

    ma quindi tutto quel meccanismo non serviva a nulla?? vero??
    www.skorpiograph.com - [ PORTFOLIO ]
    ...se vuoi essere aiutato devi aiutare chi ti aiuta ad aiutarti!!!

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.