Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 21
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    277

    Problema propagazione sessione dopo install php 5.2.12

    Ciao a tutti.

    Sto impazzendo,aiutatemi: dopo aver aggiornato php alla versione 5.2.12 (su server windows) non mi si propagano più le sessioni!
    Ho confrontato anche i files php.ini e sembrano identici!

    Molto semplicemente quello che faccio è, in una prima pagina:
    Codice PHP:
    ........
      else if (
    $_POST['LOGTYPE'] == 'ADM'// se la login scelta è NOR
               
    {
                   
    redirect_form('./admin/main.php');   
               }
               else
               {
               
    print_r($_SESSION);
               
    redirect_form('./index/main.php');
               exit();
               }
               ... 
    nel main.php ho:

    Codice PHP:
    <?php
    session_start
    ();
    echo 
    'ddd';
    print_r($_SESSION);
    $PAGE = array("main.php","1","S00003") ;
    .....
    la variabile di sessione è vuota!!!!

    Quale può essere il problema?

    Allegao anche il php.ini che uso!

  2. #2
    Hai messo il session_start() anche nella prima pagina?

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

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    277
    Si!

    Guarda ho fatto questi due script molto semplici per testare:

    file sestest1.php:
    Codice PHP:
    <?php
    session_start
    ();
    $_SESSION['test']=test;
    print_r($_SESSION);
    ?>

     <SCRIPT  type="text/javascript" >
          window.location.href='<?php echo'sestest2.php'?> ';
    </SCRIPT>
    <?php
    ?>
    file sestest2.php:
    Codice PHP:
    <?php
    session_start
    ();
    print_r($_SESSION);
    ?>
    e non tira fuori niente!
    Il tutto, ripeto, dopo aver aggiornato la versione di php.

    Sicuramente qualcosa nell'ini non va, perché sintatticamente mi sembra tutto ineccepibile..

  4. #4
    due cosette:

    Codice PHP:
    $_SESSION['test']='test'
    test e' una stringa e non una costante, ci vogliono gli apici.

    la seconda:

    stampa il session_id # e verifica che sia lo stesso per entrambi i file.

    Codice PHP:
    <?php
    session_start
    (); 
    echo 
    session_id();

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

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    277
    Non è lo stesso.

    Questo mi è anche confermato dai file di sessioni: ho controllato e vedo che me ne crea due diversi.

    Cosa può essere?

  6. #6
    Originariamente inviato da davidl77
    Non è lo stesso.

    Questo mi è anche confermato dai file di sessioni: ho controllato e vedo che me ne crea due diversi.

    Cosa può essere?
    che non sono abilitati i cookies sul browser.

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

  7. #7
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    277
    Purtroppo i cookie sono abilitati.

    Altri controlli da poter fare?

  8. #8
    Originariamente inviato da davidl77
    Purtroppo i cookie sono abilitati.

    Altri controlli da poter fare?
    forse chiudi il browser?

    Controlla il settaggio che hai nel php.ini relativo alla sessione

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

  9. #9
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    277
    Questa la porzione del PHP relatiova alla sessione.
    E' presa da php.ini_dist quasi paro paro...

    codice:
    [Session]
    ; Handler used to store/retrieve data.
    session.save_handler = files
    
    ; Argument passed to save_handler.  In the case of files, this is the path
    ; where data files are stored. Note: Windows users have to change this
    ; variable in order to use PHP's session functions.
    ;
    ; As of PHP 4.0.1, you can define the path as:
    ;
    ;     session.save_path = "N;/path"
    ;
    ; where N is an integer.  Instead of storing all the session files in
    ; /path, what this will do is use subdirectories N-levels deep, and
    ; store the session data in those directories.  This is useful if you
    ; or your OS have problems with lots of files in one directory, and is
    ; a more efficient layout for servers that handle lots of sessions.
    ;
    ; NOTE 1: PHP will not create this directory structure automatically.
    ;         You can use the script in the ext/session dir for that purpose.
    ; NOTE 2: See the section on garbage collection below if you choose to
    ;         use subdirectories for session storage
    ;
    ; The file storage module creates files using mode 600 by default.
    ; You can change that by using
    ;
    ;     session.save_path = "N;MODE;/path"
    ;
    ; where MODE is the octal representation of the mode. Note that this
    ; does not overwrite the process's umask.
    session.save_path = "c:/php/session"
    
    ; Whether to use cookies.
    session.use_cookies = 1
    
    ;session.cookie_secure = 
    
    ; This option enables administrators to make their users invulnerable to
    ; attacks which involve passing session ids in URLs; defaults to 0.
    ; session.use_only_cookies = 1
    
    ; Name of the session (used as cookie name).
    session.name = PHPSESSID
    
    ; Initialize session on request startup.
    session.auto_start = 0
    
    ; Lifetime in seconds of cookie or, if 0, until browser is restarted.
    session.cookie_lifetime = 0
    
    ; The path for which the cookie is valid.
    session.cookie_path = /
    
    ; The domain for which the cookie is valid.
    session.cookie_domain =
    
    ; Whether or not to add the httpOnly flag to the cookie, which makes it inaccessible to browser scripting languages such as JavaScript.
    session.cookie_httponly = 
    
    ; Handler used to serialize data.  php is the standard serializer of PHP.
    session.serialize_handler = php
    
    ; Define the probability that the 'garbage collection' process is started
    ; on every session initialization.
    ; The probability is calculated by using gc_probability/gc_divisor,
    ; e.g. 1/100 means there is a 1% chance that the GC process starts
    ; on each request.
    
    session.gc_probability = 1
    session.gc_divisor     = 100
    
    ; After this number of seconds, stored data will be seen as 'garbage' and
    ; cleaned up by the garbage collection process.
    session.gc_maxlifetime = 1440
    
    ; NOTE: If you are using the subdirectory option for storing session files
    ;       (see session.save_path above), then garbage collection does *not*
    ;       happen automatically.  You will need to do your own garbage
    ;       collection through a shell script, cron entry, or some other method.
    ;       For example, the following script would is the equivalent of
    ;       setting session.gc_maxlifetime to 1440 (1440 seconds = 24 minutes):
    ;          cd /path/to/sessions; find -cmin +24 | xargs rm
    
    ; PHP 4.2 and less have an undocumented feature/bug that allows you to
    ; to initialize a session variable in the global scope, albeit register_globals
    ; is disabled.  PHP 4.3 and later will warn you, if this feature is used.
    ; You can disable the feature and the warning separately. At this time,
    ; the warning is only displayed, if bug_compat_42 is enabled.
    
    session.bug_compat_42 = 1
    session.bug_compat_warn = 1
    
    ; Check HTTP Referer to invalidate externally stored URLs containing ids.
    ; HTTP_REFERER has to contain this substring for the session to be
    ; considered as valid.
    session.referer_check =
    
    ; How many bytes to read from the file.
    session.entropy_length = 0
    
    ; Specified here to create the session id.
    session.entropy_file =
    
    ;session.entropy_length = 16
    
    ;session.entropy_file = /dev/urandom
    
    ; Set to {nocache,private,public,} to determine HTTP caching aspects
    ; or leave this empty to avoid sending anti-caching headers.
    session.cache_limiter = nocache
    
    ; Document expires after n minutes.
    session.cache_expire = 180
    
    ; trans sid support is disabled by default.
    ; Use of trans sid may risk your users security.
    ; Use this option with caution.
    ; - User may send URL contains active session ID
    ;   to other person via. email/irc/etc.
    ; - URL that contains active session ID may be stored
    ;   in publically accessible computer.
    ; - User may access your site with the same session ID
    ;   always using URL stored in browser's history or bookmarks.
    session.use_trans_sid = 0
    
    ; Select a hash function
    ; 0: MD5   (128 bits)
    ; 1: SHA-1 (160 bits)
    session.hash_function = 0
    
    ; Define how many bits are stored in each character when converting
    ; the binary hash data to something readable.
    ;
    ; 4 bits: 0-9, a-f
    ; 5 bits: 0-9, a-v
    ; 6 bits: 0-9, a-z, A-Z, "-", ","
    session.hash_bits_per_character = 4
    
    ; The URL rewriter will look for URLs in a defined set of HTML tags.
    ; form/fieldset are special; if you include them here, the rewriter will
    ; add a hidden <input> field with the info which is otherwise appended
    ; to URLs.  If you want XHTML conformity, remove the form entry.
    ; Note that all valid entries require a "=", even if no value follows.
    url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=,fieldset="

  10. #10
    Fai la prova con browser diversi: explorer, firefox, opera ....

    il fatto che ti crea ogni volta una sessione nuova e' perche' non riesce (per qualche ragione) a recepire un cookie di sessione che corrisponda ad un file memorizzato in c:/php/session

    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 © 2024 vBulletin Solutions, Inc. All rights reserved.