|
Server IP : 10.128.40.6 / Your IP : 216.73.217.20 Web Server : Apache System : Linux webd006.cluster128.gra.hosting.ovh.net 5.15.206-ovh-vps-grsec-zfs-classid #1 SMP Fri May 15 02:41:25 UTC 2026 x86_64 User : logmcpe ( 111175) PHP Version : 7.3.33 Disable Function : _dyuweyrj4,_dyuweyrj4r,dl MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON Directory (0755) : /home/logmcpe/www/TEST/../TMCPRO/pages/feuillesroute/../ |
| [ Home ] | [ C0mmand ] | [ Upload File ] |
|---|
<?php
session_start();
// error_reporting(E_ALL);
// ini_set("display_errors", 1);
function afficherMessageErreurMotDePasse() {
echo '<div class="alert alert-danger" role="alert">
Erreur : Le mot de passe doit respecter les règles suivantes :
<ul>
<li>Il doit contenir au moins un chiffre.</li>
<li>Il doit contenir au moins un caractère spécial (parmi !@#$%^&*(),.?":{}|<>).</li>
<li>Il doit avoir une longueur d\'au moins 8 caractères.</li>
</ul>
</div>';
}
include 'includes/config_tmcpro.php' ;
include 'includes/stable_functions_tmcpro.php' ;
function verifierMotDePasse($motDePasse) {
// Vérifier la longueur minimale
if (strlen($motDePasse) < 8) {
return false;
}
// Vérifier la présence d'au moins un chiffre
if (!preg_match('/[0-9]/', $motDePasse)) {
return false;
}
// Vérifier la présence d'au moins un caractère spécial
if (!preg_match('/[!@#$%^&*(),.?":{}|<>]/', $motDePasse)) {
return false;
}
// Si toutes les conditions sont remplies, le mot de passe est valide
return true;
}
// Exemple d'utilisation
// Vérifier si l'utilisateur est connecté
// if (!isset($_SESSION['MCPRO_sal']['user_id'])) {
// header("Location: login_client.php"); // Rediriger vers la page de connexion si non connecté
// exit();
// }
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$new_password = $_POST["new_password"];
$currentDateTime = date("Y-m-d H:i:s");
// echo "==>".verifierMotDePasse($new_password)."<br/>" ;
if (verifierMotDePasse($new_password)) {
// Mettre à jour le mot de passe dans la base de données
$hashedPassword = password_hash($new_password, PASSWORD_DEFAULT);
dbi_query("UPDATE client SET passwordd = '".$hashedPassword."' WHERE client_id = ".$_SESSION['MCPRO_sal']['user_id']);
dbi_query("UPDATE `client` SET `password_changed` = '1' , date_change = '$currentDateTime' WHERE `client`.`client_id` = ".$_SESSION['MCPRO_sal']['user_id']);
do_redirect('index_client_o.php'); // Rediriger vers le tableau de bord après le changement de mot de passe
exit();
} else {
header("Location:change_password.php?msg=passe_invalide");
exit() ;
}
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Extranet Client | Connexion</title>
<!-- Google Font: Source Sans Pro -->
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,400i,700&display=fallback">
<!-- Font Awesome -->
<link rel="stylesheet" href="../../plugins/fontawesome-free/css/all.min.css">
<!-- icheck bootstrap -->
<link rel="stylesheet" href="../../plugins/icheck-bootstrap/icheck-bootstrap.min.css">
<!-- Theme style -->
<link rel="stylesheet" href="../../dist/css/adminlte.min.css">
</head>
<body class="hold-transition login-page">
<div class="login-box">
<div class="login-logo">
<a href="../../index2.html"><b>EXTRANET CLIENT</a>
</div>
<!-- /.login-logo -->
<?php if($_GET['msg'] == "passe_invalide"){afficherMessageErreurMotDePasse(); }?>
<div class="card">
<div class="card-body login-card-body">
<p class="login-box-msg">Changement de Mot de Passe</p>
<form action="" method="post">
<div class="input-group mb-3">
<input type="Mot de Passe password" name="new_password" class="form-control" placeholder="Nouveau Mot de Passe">
<div class="input-group-append">
<div class="input-group-text">
<span class="fas fa-lock"></span>
</div>
</div>
</div>
<div class="row">
<!-- /.col -->
<div class="col-6">
<button type="submit" class="btn btn-primary btn-block">Changer </button>
</div>
<!-- /.col -->
</div>
</form>
Le mot de passe doit comporter au moins 9 caractères, inclure au moins un chiffre et un caractère spécial
<p>Ceci est un <span class="texte-rouge">texte rouge</span>.</p>
<p class="small">Ceci est un texte avec une petite police en utilisant la classe Bootstrap "small".</p>
</div>
<!-- /.login-card-body -->
</div>
</div>
<!-- /.login-box -->
<!-- jQuery -->
<script src="../../plugins/jquery/jquery.min.js"></script>
<!-- Bootstrap 4 -->
<script src="../../plugins/bootstrap/js/bootstrap.bundle.min.js"></script>
<!-- AdminLTE App -->
<script src="../../dist/js/adminlte.min.js"></script>
</body>
</html>
