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

PHP & Base de données Discussion :

$_SESSION perdue via serveur internet [SQL-Server]


Sujet :

PHP & Base de données

  1. #1
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2014
    Messages
    521
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2014
    Messages : 521
    Par défaut $_SESSION perdue via serveur internet
    Bonjour,

    J'ai un problème avec la mise en place d'un site : la session perd les données ce qui fait que l'utilisateur est déconnecté à chaque changement de page / utilisation de formulaire.
    Pourtant, avec mon serveur local, les valeurs enregistrées dans la session restent mémorisées.

    Voici le code d'exemple pour la connexion :

    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
     
     
    <?php 
     
    	if (!isset($_SESSION)) {
    		session_start();
    	}
    	$page = basename($_SERVER["PHP_SELF"]); 
     
    	if ( isset($_POST['deconnection']) ){		
    		$_SESSION['pseudo'] = null ;
    		$_POST['pseudo'] = null ;
    	}
    	if (!empty($_POST['pseudo']) AND !isset($_SESSION['pseudo']) ){
    		$_SESSION['pseudo'] = $_POST['pseudo'] ;
    	}
     
    	if (isset($_SESSION['pseudo'])){
    		echo '
    			<p>'.$_SESSION['pseudo'].'
    			<form method="post" action=\''. $page. '\' enctype="multipart/from-data">
    			<input type = "submit" value ="deconnection" name ="deconnection" /></p>
    			</form>' ;
    	}else{
    		echo '	
    			<div id = "block">
    			<form method="post" action=\''. $page. '\' enctype="multipart/from-data">
    			<fieldset><legend>identifiants</legend>
    			
    			<label for="pseudo"></label>
    			<input name="pseudo" type="text" id="menu"/>
    			
    			<label for="passworld"></label>
    			<input name="passworld" type="text" id="menu"/>
    			
    			<input type="submit" value="se connecter" name="menu" id="menu" />
    			
    			</fieldset>
    			<a href = "newaccompt.php">create new accompt</a>
    			</div>
    			';
    	}
    ?>
    Merci si quelqu'un a une idée de ce qui peut se passer.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

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


    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php if( empty(session_id()) ){ session_start(); }

  3. #3
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2014
    Messages
    521
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2014
    Messages : 521
    Par défaut
    Bonjour, jreaux62,

    Merci pour ta réponse...j'ai essayé malheureusement cela ne fonctionne toujours pas.

  4. #4
    Invité
    Invité(e)
    Par défaut
    Que peux-tu dire d'autre que : "cela ne fonctionne toujours pas" (qui n'apporte AUCUNE info. utile) ?

  5. #5
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2014
    Messages
    521
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2014
    Messages : 521
    Par défaut
    Hum...Le problème c'est que je sais pas trop quoi ajouter...mais je vais essayer
    J'ai ajouté un mot pour voir si la session est vide ou non :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <?php 
    	if( empty(session_id()) ){
    		session_start(); 
    		echo 'session started' ;
    	}
    Et ce que je constate c'est que la cession start à chaque fois, ce en local comme depuis le serveur.

    Voici l'index qui inclue le menu :

    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
     
    <!DOCTYPE html>
      <head>
        <title>menu</title>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    	<link rel="stylesheet" href="monsite.css" />
      </head>
      <body>
    <?php
    	include 'menu.php' ;
    ?>
    	<section>
    		<p> Bonjour et bienvenue.</p>
    	</section>	
    </body>
    </html>

  6. #6
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2014
    Messages
    521
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2014
    Messages : 521
    Par défaut
    J'ai trouvé la solution :
    En fait il suffisait de mettre le "session_start" au début de la page et dans une balise rien que pour lui en tout cas c'est ce que j'ai fais et ça marche :

    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
     
     
    <?php
    	if( empty(session_id()) ){
    		session_start(); 
    		echo 'session started' ;
    	}
    ?>
     
    <div id ="connection">
    <?php 
    	$page = basename($_SERVER["PHP_SELF"]); 
     
    	...
    ?>

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

Discussions similaires

  1. Accéder à un serveur Samba via l'Internet
    Par Mecano11 dans le forum Réseau
    Réponses: 3
    Dernier message: 12/12/2014, 23h34
  2. Réponses: 2
    Dernier message: 18/08/2010, 11h40
  3. authentification acces internet via serveur linux
    Par piloupi dans le forum Réseau
    Réponses: 0
    Dernier message: 22/08/2009, 12h37
  4. Connection Internet Via Serveur
    Par aliad dans le forum Administration
    Réponses: 9
    Dernier message: 20/04/2007, 16h32
  5. [TCP/IP] VNC d'un poste WAN vers un poste LAN via serveur XP
    Par Fares BELHAOUAS dans le forum Applications
    Réponses: 11
    Dernier message: 15/12/2004, 14h01

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