IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Sessions très éphémères


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Septembre 2006
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 18
    Par défaut Sessions très éphémères
    Bonjour tout le monde.

    Il y a de cela deux jours, j'ai refait un petit bout de site, et ais mis dans des variables de sessions des objets.

    Coté script, RAS... en local ! Tout fonctionne, je met donc le site en ligne, et là c'est le drame. Les sessions disparaissent dès le changement de page, ou le rafraichissement.
    Je n'y comprend plus rien.

    Le site, pour tester (l'inscription fonctionne, donc vous pouvez tester)

    Le code :

    Connexion :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    $Requetetodo=sprintf("SELECT `Moulte choses` FROM `users` WHERE `Pseudo`=%s AND `Passe`=%s", Texte($pseudo), Texte($passe));
    $Requete=mysql_query($Requetetodo) or die(mysql_error());
    $existe=mysql_num_rows($Requete);
    $Infos=mysql_fetch_assoc($Requete);
    if (!empty($existe)){
        	$_SESSION['Infos']=serialize(new Personnage());
    	$_SESSION['Stuff']=serialize(new Stuff($Infos['Stuff']));
    	$_SESSION['Objets']=serialize(new Inventaire($Infos['Objet']));
    }

    Page principale :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    if ((isset($_SESSION['Infos']))&&(!empty($_SESSION['Infos']))){
    	$Infos=unserialize($_SESSION['Infos']);
    .
    .
    .
    }

    Lors de la connexion, les variables sont bien renseignés, car l'affichage de certaines variables de l'objet fonctionne bien. Mais dès le chargement de la page, plus rien :s

    Cela peut il venir du fait que mon sessions_start() est dans un fichier requis ?
    Celui ci est appelé dans toutes mes pages, sauf les inclusions.

    Début de page :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    require_once('config.php'); //la dedans
    require_once('cache.php');
    require_once('content.php');
    require_once('fonctions.php');

    config.php
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    if (!isset($_SESSION)){
    	session_start();
    }

  2. #2
    Membre averti

    Profil pro
    Étudiant
    Inscrit en
    Décembre 2008
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2008
    Messages : 32
    Par défaut
    Bonsoir Belebostre

    Là, comme ça, la seule idée que j'ai c'est que ta config de sessions sur le serveur distant est foireuse. Peut-être quelque chose à voir du côté de la taille des sessions...

    Du coup je te mets la tête de mon php.ini pour la section concernant les sessions, au cas où... :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    ; where MODE is the octal representation of the mode. Note that this
    ; does not overwrite the process's umask.
    session.save_path = "C:\Program Files\xampp\tmp"
     
    ; Whether to use cookies.
    session.use_cookies = 1
     
    ; 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 =
     
    ; 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="

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 31
    Par défaut
    Salut, ton site est chez Free, et pour que les sessions fonctionnent tu dois créer un répertoire "sessions" à la racine de ton FTP

  4. #4
    Membre averti
    Inscrit en
    Septembre 2006
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 18
    Par défaut
    Merci a vous deux, mais je n'ai malheureusement pas accès à mon php.ini et mes sessions sont correctement hébergées, la version précédente en utilisait déjà, et sans soucis.
    Le problème viens donc probablement de la taille, mais quelles sont les limites chez free ?

Discussions similaires

  1. ouverture session windows 7 hors domaine très longue
    Par benjaminc69 dans le forum Windows 7
    Réponses: 5
    Dernier message: 12/03/2015, 14h24
  2. Délais de fermeture de session TSE très longs
    Par cramnirab dans le forum HyperFileSQL
    Réponses: 1
    Dernier message: 10/09/2012, 09h17
  3. [WD15] Délais de fermeture de session TSE très longs
    Par cramnirab dans le forum WinDev
    Réponses: 10
    Dernier message: 01/03/2011, 17h09
  4. ouverture session très lente
    Par akhaa dans le forum Windows XP
    Réponses: 0
    Dernier message: 09/01/2009, 17h12
  5. Réponses: 4
    Dernier message: 28/09/2002, 00h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo