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 :

SESSION ID change ou perte de COOKIE


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 16
    Par défaut SESSION ID change ou perte de COOKIE
    Bonjour a tous
    C’est la premiere fois que je poste car je trouve toujours la solution de mes problemes dans le forum mais malheureusement aujourd’hui ce n’est pas le cas.
    Enfin après avoir tout essayé je me suis décide de poser mon problème.
    Je développe en site en php (dynamique avec des includes) et je souhaite créer un espace membre en utilisant des sessions. Ca fait déjà une semaine je me casse la tête sur ces maudits sessions.
    En local (easyphp) tout marche.
    Le problème viens lorsque j'execure sur le serveur: a chaque refresh ou nouvelle page consulté le session_id() change

    Voici la configuration php
    PHP Version 4.4.9
    session.auto_start Off Off
    session.bug_compat_42 On On
    session.bug_compat_warn On On
    session.cache_expire 180 180
    session.cache_limiter nocache nocache
    session.cookie_domain no value no value
    session.cookie_lifetime 0 0
    session.cookie_path / /
    session.cookie_secure Off Off
    session.entropy_file no value no value
    session.entropy_length 0 0
    session.gc_divisor 100 100
    session.gc_maxlifetime 1440 1440
    session.gc_probability 1 1
    session.name PHPSESSID PHPSESSID
    session.referer_check no value no value
    session.save_handler files files
    session.save_path /…../monsite/tmp /tmp
    session.serialize_handler php php
    session.use_cookies On On
    session.use_only_cookies On Off
    session.use_trans_sid Off Off
    Le fichier INDEX.php
    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
     
    <?php
    session_save_path("/...../monsite/tmp");
    session_start();
    $_SESSION[‘bidon’] = “Ca marche”;
    error_reporting(E_ALL);
    ?>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">	
    <html>
    <head>
    		<?php
    		$connect = mysql_connect("host","user","pass");
    		mysql_select_db("bd", $connect);
    		mysql_query("SET NAMES UTF8",$connect);
    		if(!isset($_GET["q"])) $aq="a";
    		else $aq=$_GET["q"];
    		$requete="SELECT * FROM header WHERE id=\"".$aq."\"";
    		$result=mysql_query($requete,$connect);
    		$row = mysql_fetch_row($result);
    		echo "<title>".$row[1]."</title>";
    		echo "<link href=\"js_css/presentation.css\" rel=\"stylesheet\" type=\"text/css\">";
    		echo "<link href=\"js_css/menuv.css\" rel=\"stylesheet\" type=\"text/css\">";
    		echo "<link rel=\"icon\" type=\"image/png\" href=\"image/favicon.png\">";
    		echo "<script type=\"text/javascript\" src=\"js_css/date.js\"></script>";
    		echo "<script type=\"text/javascript\" src=\"js_css/dynMenu.js\"></script>";
    		echo "<script type=\"text/javascript\" src=\"js_css/browserdetect.js\"></script>";
    		echo "<meta name=\"Author\" content=\"Edi Kitar\">";
    		echo "<meta name=\"Identifier-URL\" CONTENT=\"http://www.MONSITE.COM\">";
    		echo "<meta name=\"Category\" content=\"sport, football, soccer\">";
    		echo "<meta name=\"Keywords\" content=\"".$row[3]."\">";
    		echo "<meta name=\"Description\" lang=\"bg\" content=\"".$row[2]."\">";
    		echo "<meta name=\"Distribution\" content=\"golobal\">";
    		echo "<meta name=\"Publisher\" content=\"EdiKitar\">";
    		echo "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\">";
    	?>
    </head>
    <body>
    <div id="navi">
    			<ul id="menuDeroulant">
    				<li><a href="index.php?q=a">Start</a></li>
    				<li><a href="index.php?q=b">History</a></li>
    				<li><a href="index.php?q=c">Incredible</a></li>
    			</ul>
    	</div>
    if(!isset($_GET["q"])) $aq="a";
    		else $aq=$_GET["q"];
    		$requete="SELECT * FROM link WHERE id=\"".$aq."\"";
    		$result=mysql_query($requete,$connect);
    		$row = mysql_fetch_row($result);
    		echo "<div id=\"contenu\" style=\"background: url(".$row[2].") no-repeat center\">";
    		include($row[1]);
    		echo "</div>";
    		mysql_close();
    …..
    </body>
    </html>
    Un des fichiers à insérer START.php
    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
     
    <br><br>
    <p class="text">SALUT</p>
    <?php
    	$requeteH="SELECT id,title FROM header WHERE id LIKE 'hist%' ORDER BY id DESC LIMIT 0,1";
    	$requeteI="SELECT id,title FROM header WHERE id LIKE 'incr%' ORDER BY id DESC LIMIT 0,1";
    	$resultH=mysql_query($requeteH,$connect);
    	$rowH = mysql_fetch_row($resultH);
    	$resultI=mysql_query($requeteI,$connect);
    	$rowI = mysql_fetch_row($resultI);
    	echo "<img src=\"image/new.gif\" class=\"floatLeft\"><br><br>";
    	echo "<a href=\"index.php?q=b\" class=\"listeB\">История</a> ";
    	echo ": <a href=\"index.php?q=".$rowH[0]."\" class=\"liste\">".$rowH[1]."</a><br>";
    	echo "<a href=\"index.php?q=c\" class=\"listeB\">Знаеш ли?</a> ";
    	echo ": <a href=\"index.php?q=".$rowI[0]."\" class=\"liste\">".$rowI[1]."</a><br>";
    	echo session_id();
    	echo $_SESSION[‘bidon’] ;
    ?>
    La navigation se fait avec le menu dans index.php
    J’ai changé le save_path pour voir si les sessions sont bien créées et c’est le cas. J’ai donne permission 777 pour teste.
    De se que j’ai compris en appelant session_start() le navigateur envoie tous les cookies qu’il a au serveur. Si le serveur ne trouve pas le cookie avec session_id() il crée une nouvelle session (car nouveau visiteur).
    J'ai modifier cookie_lifetime 0 -> 1500 mais cela n'a rien change
    Quelque chose d’étonnant
    En effectuant le test suivant :
    J’enleve tout ce qui est dynamique. Je m’explique
    J’ai les deux fichier index.php et start.php mais sans unclude dans index.
    La navigation simple avec
    <a href="start.php">Start</a> (dans index.php)
    <a href="index.php">Index</a> (dans start.php)
    Bien évidemment je place session_start() au debut de start.php
    Je constate que tout marche : les session_id conserve ainsi que la variable

    J’utilise IE8 (j’ai fait de test en acceptant tous les cookies) et Mozzila3
    Je suis hebergé chez 1and1

    est-ce que le probleme peut venir des META que j'ai?

    Si quelqu’un a une idee d’où sa vient le probleme.
    En attendant je vais balancer le site sur free.fr pour voir si c’est un probleme venant de 1and1 parce que j’ai vu qu’il y a beaucoup de souci avec eux.

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 16
    Par défaut
    Pour tous ceux qui ont le meme probleme.
    J'ai parké le domain sur un hebergeur gratuit 000webhost et les sessions marchent bien. Je suis passé en php 5.2. Je ne crois pas que ca veanit de la probleme. Personellement je ne comprends pas.

    Si quelqu'un a une idee, je voudrais bien savoir quelle peut etre la raison de cette anomalie des include/session

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Webview Perte de Cookie/Session
    Par jean-ba dans le forum Composants graphiques
    Réponses: 5
    Dernier message: 23/08/2013, 01h59
  2. Session qui change en cours de session
    Par cuisto44000 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 29/03/2009, 11h33
  3. perte de cookie et de session dans une page aspx
    Par lenny32 dans le forum ASP.NET
    Réponses: 5
    Dernier message: 08/12/2008, 10h54
  4. Une variable de session qui change
    Par zsoh dans le forum Langage
    Réponses: 5
    Dernier message: 02/09/2007, 21h03
  5. Variable de session qui change toute seule
    Par mijean dans le forum Langage
    Réponses: 5
    Dernier message: 21/05/2007, 15h42

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