Pas de conservation des variables de session

Résolu
Bonjour,

Je fais appel à vous car j'ai un problème avec les variables de session sur mon script PHP. En effet, elles ne sont pas conservés d'une page à l'autre. Auriez vous une idée sur l'origine du problème.

Cordialement

4 réponses

  1. Effectivement vous avez raison !

    Voici le code :

    <?php 
    session_start();
    
    //Connexion db
    try
    {
    	$db = new PDO('mysql:host=********;dbname=********', '********', '********');
    }
    catch (Exception $e)
    {
    	die('Erreur : ' . $e->getMessage());
    }
    
    
    
    //Intégration du process de connxion
    include 'process_connect.php';
    
    [...]
    
    if ($_SESSION['connexion']==true) {
    //affichage de la page
    [...]
    }
    else {
    //formulaire de connection
    [...]
    }
    


    process_connect.php :

    <?php 
    
    //Demande de déconnexion
    if ($_GET['disconnect']) {
    	session_destroy();
    }
    
    
    
    $mail_valid=true;
    $password_valid=true;
    
    //Processus de connexion
    
    	//Verification de la présence des champs login et mdp
    	if (isset($_POST['mail']) AND isset($_POST['password'])) {
    		//Extraction des e-mails présents dans la base
    		$exctract_account = $db->query('SELECT * FROM data_users');
    		//Verification de la correspondance entre mail du POST et mail de la db
    		while ($exctrated_account = $exctract_account->fetch()) {
    			$mail_valid=false;
    			if ($exctrated_account['mail']==$_POST['mail']) {
    				$mail_valid=true;
    				$password_valid=false;
    				if ($exctrated_account['password']==md5($_POST['password'])) {
    					$password_valid=true;
    					$_SESSION['connexion']=true;
    				}
    			}
    		}
    	}
    
    
    
     ?>
    


    Ca marche quand je mets le bon login pswd, puis quand j'actualise la page ça remets le formulaire de connexion.

    Et oui je mets le session start
    1. Peux-tu essayer en écrivant ceci :
      <?php session_start();
      avec un unique espace !
    2. Pas de changement...
  2. Peux-tu me donner le nom des fichiers (même si pas réel) .. juste pour me rendre compte comment cela fonctionne.

    L'utilisateur affiche la page de connexion "tata" qui contient le formulaire "tata" par get ou par post .. etc.

    Que signifie ce code ?:
    while ($exctrated_account = $exctract_account->fetch())