Bonjour,

j'ai une erreur que je n'arrive pas à résoudre. Lors de mon authentification, je lance le bon mot de passe et le bon pseudo mais il me dit qu'il y a une erreur d'authentification.
Je pense que ça ne passe pas dans le
if(isset($_POST['co_login']) == USER_LOGIN && isset($_POST['co_mdp']) == USER_MDP)

sauf que je ne vois pas ce qui bloque...

mon admin.php :

<?php
require ('../librairie/parametres.php');

if (empty($_POST) == false){
    echo 'bonjour';
    if(isset($_POST['co_login']) == USER_LOGIN && isset($_POST['co_mdp']) == USER_MDP){
        echo 'hello';
        $_SESSION['isAuthenticated'] = true;
        header('Location: admin_index.php');
        exit;
    } else {
        $error = 'Authentification invalide';
    }
}

?>

<!DOCTYPE html>     
<html>
    <head>
        <meta charset="UTF-8">
                <!-- Comptabilité Internet Explorer -->
        <!--[if lt IE 9]>
            <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
        <![endif]-->
        <link rel="icon" type="image/png" href="../CSS/img/logoo.png" />
        <title></title>
        <link rel="stylesheet" href="../CSS/admin.css"/>
    </head>
    
    <body>
        <form action="" method="post">
            <div class="Admin">
                <?php
                
                if(isset($_SESSION['errorAccess']) == true){
                    echo '<p style="color: red; font-family: calibri;">Vous avez tenté d\'acceder à une page protégée </p>';
                    unset($_SESSION['errorAccess']);
                }
                
                if(isset($error) == true){
                    echo '<p style="color: red; font-family: calibri;">' , $error , '</p>';
                }
                
                ?>
                <img src="../CSS/img/imgadmin.jpg" />
                    <h2>Pseudo</h2>
                            <input name="login" type="text" value="" />
                    <h2>Mot de passe</h2>
                        <input name="pass" type="password" value="" />
                            <br/>
                        <input id="connexion" type="submit" value="Connexion" />
            </div>
        </form>
    </body>
</html>


mon code parametre :


<?php
session_start();

define ('USER_LOGIN', 'admin');
define ('USER_MDP', 'azerty');

//vérifie si l'utilisateur est authentifié
//redirige l'utilisateur vers la home si non authentifié
function checkAuthentification(){
    if(isset($_SESSION['isAuthenticated']) == false){
        // mémorise l'erreur : accès refusé
        $_SESSION['errorAccess'] = true;
        // si non OK, on le redirige vers la home
        header('Location: admin.php');
        exit;
    }
}

?>
isset renvoie true ou false donc risque pas d'être == USER_LOGIN
C'est là que ça foire, j'sais pas d'où tu sors ce code mais y'a pb.
if(isset($_POST['co_login']) == USER_LOGIN && isset($_POST['co_mdp']) == USER_MDP)

Comme ça c'est mieux:
if(isset($_POST['co_login'])) && $_POST['co_login']== USER_LOGIN

...
Merci pour la correction Smiley smile

Mais, j'ai réessayé, mon authentification ne fonctionne toujours pas même si j'indique le bon pseudo et mdp...
Ta fonction checkAuthentification ne tient pas debout (entre autre un
if
mais pas de
else
)
Et puis ça
if(isset($_SESSION['isAuthenticated']) == false
comme dis précédemment c'est pas le pied. On fait plutôt:
if(!isset($_SESSION['isAuthenticated'])