alpha_full/pages/index/adminConnect.controle.demo.php
2026-04-06 22:58:51 +02:00

159 lines
5.8 KiB
PHP
Executable File
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
$nomFicAppelant = basename(__FILE__);
// ---------------------------------------------------
// access demo, on vient sur cette page par le lien recu par mail, donc normalement le mail est déjà vaide, sauf si on s'amuse a taper n'importe quoi dans l'URL
// ---------------------------------------------------
// ---------------------------------------------------
// Init
// ---------------------------------------------------
if (empty($contactMsg[47])) {$refresh="Oui";include ($includePath. "/req/13-init.contactMsgList.php");}
if (empty($clientMsg[86])) {$refresh="Oui"; include ($includePath. "/req/06-init.cliMsgList.php");}
if (empty($navMsg)) {$refresh="Oui"; include ($includePath. "/req/05-init.navMsgList.php");}
$mess1='<span >' .$clientMsg[82]. '</span>';//caracteres
$mess2='<span >' .$clientMsg[83]. '</span>';//interdit dans la chaine
$mess3='<span >' .$clientMsg[84]. '</span>';//Message : caractères dans
$mess4='<span >' .$clientMsg[85]. '</span>';// trop court
$mess5='<span >' .$clientMsg[86]. '</span>';// au lieu de
// $lienContact='<span class="boutons" style="grid-row:7; grid-column: 2 / span 2; wrap:breakword; margin-left:150px"><a style="white-space:normal;" class="boutons" href="mailto:'.strip_tags($contactMsg[47]). '?subject= R&#233;cup&#233;rer identifiants " title="' .$navTitle[20]. '">' .$navMsg[20]. '</a></span>';
// ---------------------------------------------------
// Form
// ---------------------------------------------------
$contAdmLogin='Oui';
// ---------------------------------------------------
// Regarde si le mail n'est pas vide
// ---------------------------------------------------
if (empty ($adminMail)) {
$contAdmLogin='Non';
$usrSiteMsgClass='ko';
$usrSiteMsg .= $clientMsg[39]. '';
}
// ---------------------------------------------------
// Regarde si le mail a un @
// ---------------------------------------------------
$testM=mb_strpos($adminMail,'@');
if (empty ($testM) && $contAdmLogin=='Oui') {
$contAdmLogin='Non';
$usrSiteMsgClass='ko';
$usrSiteMsg .= $clientMsg[43]. '';
}
// ---------------------------------------------------
// Regarde si le mail a un .
// ---------------------------------------------------
$testP=mb_strpos($adminMail,'.');
// le mail n'a pas de point
if (empty ($testP) && $contAdmLogin=='Oui') {
$contAdmLogin='Non';
$usrSiteMsgClass='ko';
$usrSiteMsg .= $clientMsg[42]. '';
}
// ---------------------------------------------------
// Caracteres dans mail
// ---------------------------------------------------
if ($adminMail!='' && $contAdmLogin=='Oui') {
$char =CheckValidName($adminMail);
if (!empty ($char)) {
$usrSiteMsg .= $mess1. '"' .$char. '" ' .$mess2. '"' .$adminMail. '"';
$contAdmLogin='N';
$usrSiteMsgClass='ko';
}
$nbCar=5;
$longueur=mb_strlen($adminMail);
if ($longueur < $nbCar && $contAdmLogin!='N') {
$usrSiteMsg .= $clientMsg[8].$mess4 .$longueur .$mess3. '"' .$adminMail. '" '.$mess5.' '.$nbCar.'';
$contAdmLogin='N';
$usrSiteMsgClass='ko';
}
}
// ---------------------------------------------------
// Regarde s'il existe en base demo
// ---------------------------------------------------
if ($contAdmLogin=='Oui') {
// ---------------------------------------------------
// Lire en base
// ---------------------------------------------------
$bdd ="123demo";
$user="123ventes";
$pass="nobug250";
// ----------------------------- PDO -----------------------------
try {
$idPdo = new PDO('mysql:host=' .$host. '; dbname=' .$bdd. '; charset=utf8', $user, $pass);
// MÉTHODE COMPLÈTE (PDO AVEC VÉRIFICATIONS)
$idPdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$idPdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
// $idPdo = null;
}
catch (PDOException $e) {
if($debug===true) {
$debugMsg .= "<br>Erreur !: " .$e->getMessage(). "";
$debugMsg .= '<br>host = ' .$host. ' | bdd = ' .$bdd. ' | user =' .$user. ' | pass = ' .$pass;
}
die();
}
$tabResult= dynRequete_select('SELECT', 'demo', ['date', 'eMail', 'cle'], ['eMail' => $adminMail], '', 'adminAccessDemo.php', 0, $debug[2], 'tabResult');
$trouve=false;
if ($tabResult) {
foreach ($tabResult as $i => $row) {
$dateAccess = $row['date'];
$adminMailRecupBase = $row['eMail'];
$pwdAdmRecupBase = $row['cle'];
if( $pwdAdmRecupBase == $cle) {
$trouve=true;
$contAdmLogin='O';
// 1⃣ Convertir ton format personnalisé
$dateAccesObj = DateTime::createFromFormat('Y-m-d_H-i', $dateAccess);
// 2⃣ Date du jour
$today = new DateTime();
// 3⃣ Calcul de la différence
$diff = $today->diff($dateAccesObj);
// 4⃣ Vérifier si + de 30 jours
if ($diff->days > 30) {
$usrSiteMsg = "Votre accès date de plus de trente jours, vous devez le renouveller.";
$usrSiteMsgClass='ko';
} else {
$usrSiteMsg = "Vous avez maintenant accès pendant 30 jours à l'environnement de démonstration 1.2.3 Ventes.";
$usrSiteMsgClass='ok';
$_SESSION['isDemo']=1;
$contAdmLogin='Oui';
// ---------------------------------------------------
// Bouton vers BO
// ---------------------------------------------------
echo '<div style="grid-column:1 / span 4;" >';
include ("./pages/index/btnAdmin.php");
echo '</div>';
}
}
//si clé Ko
else {
$usrSiteMsg="La clé ne corresponds pas !";
$usrSiteMsgClass='ko';
}
}
}
// il n'existe en base demo, access refusé
else {
$usrSiteMsg .= $navMsg[29]; // les données ne peuvent pas etre affichées
$usrSiteMsgClass='ko';
$contAdmLogin='N';
}
}
?>