Bonjour,

Je rencontre un problème avec les sessions de mon site.
Quand je me log-in en local tout fonctionne parfaitement, mais une fois le site en ligne quand je valide les identifiant et mot de passe ça ne me renvoi qu'une simple page blanche.
je ne sais plus ou chercher.

login.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
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
 
 
<?php
session_start();
include('../config/config.php');
include('../lib/app.lib.php');
 
 
 
//$vue='login'; pas de vue, voir en bas de fichier
$title = 'Se connecter';
 
//Initialisation des erreurs à false
$erreur = '';
 
//Tableau correspondant aux valeurs à récupérer dans le formulaire.
$values = [
    'email'=>'',
    'password'=>''
];
 
$tab_erreur =
[
    'email'=>'Email vide, merci de préciser votre email',
    'password'=>'Password vide, merci de préciser votre mot de passe'
];
 
try
{
 
    if(array_key_exists('email',$_POST))
    {
        foreach($values as $champ => $value)
        {
            if(isset($_POST[$champ]) && trim($_POST[$champ])!='')
                $values[$champ] = $_POST[$champ];
            elseif(isset($tab_erreur[$champ]))   
                $erreur.= '<br>'.$tab_erreur[$champ];
            else
                $values[$champ] = '';
        }
 
        if(!filter_var($_POST['email'],FILTER_VALIDATE_EMAIL))
            $erreur.= '<br> Vous devez saisir un email valide !';
 
        if($erreur =='')
        {
            //Connexion
            $dbh = connexion();
 
            /**2 : Prépare ma requête SQL */
            $sth = $dbh->prepare('SELECT * FROM user WHERE email = :email');
 
            /** 3 : executer la requête - on utilise pas le tableau values car il contient email et password et pas que l'email */
            $sth->execute(array('email'=>$values['email']));
 
            $user = $sth->fetch(PDO::FETCH_ASSOC);
 
            /* Si l'utilisateur existe dans la base de données avec son email 
            et que le mot de passe match ! */
            if($user != false && password_verify($values['password'],$user['mdp']))
            {
                //On peut connecter l'utilisateur et garder quelques info en session
                $_SESSION['connect'] = true; 
                $_SESSION['user'] = ['id'=>$user['id'],'name'=>$user['prenom'].' '.$user['nom'], 'role'=>'ROLE_ADMIN'];
                header('Location:index.php'); //On redirige vers la page d'accueil de l'admin
 
 
                exit();//exit after redirect !!
            }
            else
            {
                $erreur.='<br>Connexion impossible. Vérifiez vos identifiants !';
            }
        }
 
    }
}
catch(PDOException $e)
{
    $erreur.='<br>Une erreur de connexion a eu lieu :'.$e->getMessage();
}
 
 
 
/*Le layout du login est diférent du layout du reste de l'admin  */
include('tpl/login.phtml');
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
 
 
<?php
session_start();
 
include('../config/config.php');
include('../lib/app.lib.php');
 
userIsConnected();
 
$vue='home';
$title = 'Bienvenue - ' . $_SESSION['user']['name'] ;
 
include('tpl/layout.phtml');
config.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
 
/** Connexion BDD */
const DB_DSN    = 'mysql:host=mathekevxyflore.mysql.db;dbname=mathekevxyflore;charset=UTF8';
const DB_USER   = '*********';
const DB_PASS   = '*********';
Voila, j'espère avoir été assez claire dans mon explication, et merci d'avances pour les explications ou pistes que vous pourrez me fournir.

kevin