recup
This commit is contained in:
57
gsb/controleurs/c_connexion.php
Normal file
57
gsb/controleurs/c_connexion.php
Normal file
@@ -0,0 +1,57 @@
|
||||
<?php
|
||||
// ****************************************'
|
||||
// Le CASTEL-BTS SIO/ PROJET GSB PPE2 2020'
|
||||
// Programme: c_connexion.php '
|
||||
// Objet : authentification '
|
||||
// Client : Bts SIO1 '
|
||||
// Version : 22.03 '
|
||||
// Date : 09/03/2022 à 19h07 '
|
||||
// Auteur : pascal.blain@ac-dijon.fr '
|
||||
//*****************************************'
|
||||
|
||||
if(!isset($_REQUEST['action'])){$_REQUEST['action'] = 'demandeConnexion';}
|
||||
|
||||
$action = $_REQUEST['action'];
|
||||
switch($action){
|
||||
case 'demandeConnexion':{
|
||||
session_unset();
|
||||
unset($choix);
|
||||
$formulaire = "frmIdentification";
|
||||
$champ = "login";
|
||||
include("vues/v_entete.php");
|
||||
include("vues/v_connexion.php");
|
||||
break;
|
||||
}
|
||||
case 'valideConnexion':{
|
||||
$login = $_REQUEST['login'];
|
||||
$mdp = $_REQUEST['mdp']; //md5($_REQUEST['mdp']);
|
||||
$utilisateur = $pdo->getInfosUtilisateur($login,$mdp);
|
||||
|
||||
if(!is_array( $utilisateur)){
|
||||
$formulaire ="frmIdentification";
|
||||
$champ ="login";
|
||||
include("vues/v_entete.php");
|
||||
ajouterErreur("Login ou mot de passe incorrect");
|
||||
include("vues/v_erreurs.php");
|
||||
include("vues/v_connexion.php");
|
||||
}
|
||||
else{
|
||||
$id = $utilisateur['uId'];
|
||||
$nom = $utilisateur['uNom'];
|
||||
$prenom = $utilisateur['uPrenom'];
|
||||
$statut = $utilisateur['uStatut'];
|
||||
($statut==0)?$region=0:$region=$utilisateur['uRegion'];
|
||||
connecter($id,$nom,$prenom,$statut,$region);
|
||||
header ('location: index.php?choixTraitement=param&action=voir');
|
||||
}
|
||||
break;
|
||||
}
|
||||
default :{
|
||||
$formulaire ="frmIdentification";
|
||||
$champ ="login";
|
||||
include("vues/v_entete.php");
|
||||
include("vues/v_connexion.php");
|
||||
break;
|
||||
}
|
||||
}
|
||||
?>
|
79
gsb/controleurs/c_param.php
Normal file
79
gsb/controleurs/c_param.php
Normal file
@@ -0,0 +1,79 @@
|
||||
<?php
|
||||
// ****************************************'
|
||||
// Le CASTEL-BTS SIO/ PROJET démonstration'
|
||||
// Programme: c_param.php '
|
||||
// Objet : gestion des parametres '
|
||||
// Client : Bts SIO1 '
|
||||
// Version : 22.03 '
|
||||
// Date : 09 mars 2022 à 19H51 '
|
||||
// Auteur : pascal-blain@wanadoo.fr '
|
||||
//*****************************************'
|
||||
|
||||
$action = $_REQUEST['action'];
|
||||
if (!isset($_REQUEST['type'])) {$type = '*';} else {$type =$_REQUEST['type'];}
|
||||
if (!isset($_REQUEST['valeur'])) {$valeur = '*';} else {$valeur =$_REQUEST['valeur'];}
|
||||
if (!isset($_REQUEST['zPlancher'])) {$plancher = 0;} else {$plancher =intval($_REQUEST['zPlancher']);}
|
||||
if (!isset($_REQUEST['zPlafond'])) {$plafond = 0;} else {$plafond =intval($_REQUEST['zPlafond']);}
|
||||
if (!isset($_REQUEST['zType'])) {$zType = '*';} else {$zType =$_REQUEST['zType'];}
|
||||
if (!isset($_REQUEST['zIndice'])) {$indice = '*';} else {$indice =$_REQUEST['zIndice'];}
|
||||
|
||||
switch($action) {
|
||||
case 'voir':
|
||||
{
|
||||
include("vues/v_entete.php");
|
||||
$lesParametres=$pdo->getLesParametres();
|
||||
include("vues/v_choixParam.php");
|
||||
$enteteParametre=$lesParametres[$noP-1];
|
||||
$lesInfosParametre = $pdo->getParametre($choix);
|
||||
include("vues/v_ficheParametre.php");
|
||||
$stat="2";
|
||||
break;
|
||||
}
|
||||
//-----------------------------------------liste détaillée pour un parametre
|
||||
case 'liste':
|
||||
{
|
||||
include("vues/v_entete.php");
|
||||
$lesParametres=$pdo->getLesParametres();
|
||||
include("vues/v_choixParam.php");
|
||||
$titre2=$lesStatistiques[0]['libelle'];
|
||||
include("vues/v_listeStat.php");
|
||||
break;
|
||||
}
|
||||
//----------------------------------------- AJOUT/MODIFICATION/SUPPRESSION
|
||||
case 'ajouter':
|
||||
case 'modifier':
|
||||
case 'supprimer':
|
||||
{
|
||||
include("vues/v_entete.php");
|
||||
$infosParam = $pdo->getInfosParam($type, $valeur);
|
||||
include("vues/v_unParam.php");
|
||||
break;
|
||||
}
|
||||
//----------------------------------------- VALIDATION AJOUT
|
||||
case 'validerAjouter':
|
||||
{// enregistrement de la ligne et retour
|
||||
if ($_REQUEST['zOk']=="OK") {$pdo->ajoutParametre($type, $valeur, addslashes ($_REQUEST['zLibelle']), $_REQUEST['zTerritoire'], $_REQUEST['zDep'] , $plancher, $plafond);}
|
||||
header ('location: index.php?choixTraitement=param&action=voir&lstParam='.$type);
|
||||
}
|
||||
//----------------------------------------- VALIDATION MODIFICATION
|
||||
case 'validerModifier':
|
||||
{
|
||||
if ($_REQUEST['zOk']=="OK") {$pdo->majParametre($type, $valeur, addslashes ($_REQUEST['zLibelle']), $_REQUEST['zTerritoire'], $_REQUEST['zDep'], $plancher, $plafond);}
|
||||
header ('location: index.php?choixTraitement=param&action=voir&lstParam='.$type);
|
||||
break;
|
||||
}
|
||||
//----------------------------------------- VALIDATION SUPPRESSION
|
||||
case 'validerSupprimer':
|
||||
{
|
||||
if ($_REQUEST['zOk']=="OK") {$pdo->supprimeParametre($type, $valeur);}
|
||||
header ('location: index.php?choixTraitement=param&action=voir&lstParam='.$type);
|
||||
break;
|
||||
}
|
||||
|
||||
default :
|
||||
{
|
||||
echo 'erreur d\'aiguillage !'.$action;
|
||||
break;
|
||||
}
|
||||
}
|
||||
?>
|
50
gsb/controleurs/c_utilisateur.php
Normal file
50
gsb/controleurs/c_utilisateur.php
Normal file
@@ -0,0 +1,50 @@
|
||||
<?php
|
||||
// ****************************************'
|
||||
// Le CASTEL-BTS SIO/ PROJET démonstration'
|
||||
// Programme: c_param.php '
|
||||
// Objet : gestion des parametres '
|
||||
// Client : Bts SIO1 '
|
||||
// Version : 22.03 '
|
||||
// Date : 09 mars 2022 à 19H51 '
|
||||
// Auteur : pascal-blain@wanadoo.fr '
|
||||
//*****************************************'
|
||||
|
||||
$action = $_REQUEST['action'];
|
||||
|
||||
|
||||
switch($action) {
|
||||
case 'voir':
|
||||
{
|
||||
include("vues/v_entete.php");
|
||||
$lesInfosProfil = $pdo->getInfosUtilisateur("*",$_SESSION['idUtilisateur']);
|
||||
include("vues/v_ficheProfil.php");
|
||||
break;
|
||||
}
|
||||
|
||||
//----------------------------------------- /MODIFICATION/
|
||||
|
||||
case 'modifier':
|
||||
|
||||
{
|
||||
include("vues/v_entete.php");
|
||||
$infosParam = $pdo->getInfosParam($type, $valeur);
|
||||
include("vues/v_unParam.php");
|
||||
break;
|
||||
}
|
||||
|
||||
//----------------------------------------- VALIDATION MODIFICATION
|
||||
case 'validerModifier':
|
||||
{
|
||||
if ($_REQUEST['zOk']=="OK") {$pdo->majParametre($type, $valeur, addslashes ($_REQUEST['zLibelle']), $_REQUEST['zTerritoire'], $_REQUEST['zDep'], $plancher, $plafond);}
|
||||
header ('location: index.php?choixTraitement=param&action=voir&lstParam='.$type);
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
default :
|
||||
{
|
||||
echo 'erreur d\'aiguillage !'.$action;
|
||||
break;
|
||||
}
|
||||
}
|
||||
?>
|
210
gsb/controleurs/fonctionsProjet.inc
Normal file
210
gsb/controleurs/fonctionsProjet.inc
Normal file
@@ -0,0 +1,210 @@
|
||||
<?php
|
||||
/**
|
||||
* Fonctions php pour l'application
|
||||
* @version 22.03 version MVC modifiee le 09 mars 2022 par Blain Pascal
|
||||
*/
|
||||
|
||||
/**
|
||||
* Teste si un utilisateur est connecté (retourne vrai ou faux)
|
||||
*/
|
||||
function estConnecte(){
|
||||
return isset($_SESSION['idUtilisateur']);
|
||||
}
|
||||
/**
|
||||
* Enregistre dans des variables de session les informations d'un utilisateur
|
||||
*/
|
||||
function connecter($id, $nom, $prenom, $statut, $region){
|
||||
$_SESSION['idUtilisateur'] = $id;
|
||||
$_SESSION['nom'] = $nom;
|
||||
$_SESSION['prenom'] = $prenom;
|
||||
$_SESSION['statut'] = $statut;
|
||||
$_SESSION['region'] = $region;
|
||||
}
|
||||
/**
|
||||
* Detruit la session active
|
||||
*/
|
||||
function deconnecter(){
|
||||
session_destroy();
|
||||
}
|
||||
/**
|
||||
* envoyer un message electronique
|
||||
*/
|
||||
function envoyerMail($mail, $sujet, $msg, $entete)
|
||||
{
|
||||
if (mail($mail, $sujet, $msg, null)==false)
|
||||
{ echo 'Suite à un problàme technique, votre message n a pas ´t´ envoy´ a '.$mail.' sujet'.$sujet.'message '.$msg.' entete '.$entete;}
|
||||
}
|
||||
/**
|
||||
* Transforme une date au format français jj/mm/aaaa vers le format anglais aaaa-mm-jj
|
||||
* @param $madate au format jj/mm/aaaa
|
||||
* @return la date au format anglais aaaa-mm-jj
|
||||
*/
|
||||
function dateFrancaisVersAnglais($maDate){
|
||||
if(estDateValide($maDate)== true)
|
||||
{
|
||||
@list($jour,$mois,$annee) = explode('/',$maDate);
|
||||
return date('Y-m-d',mktime(0,0,0,$mois,$jour,$annee));
|
||||
}
|
||||
else
|
||||
{
|
||||
return null;
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Transforme une date au format format anglais aaaa-mm-jj vers le format français jj/mm/aaaa
|
||||
* @param $madate au format aaaa-mm-jj
|
||||
* @return la date au format format français jj/mm/aaaa
|
||||
*/
|
||||
function dateAnglaisVersFrancais($maDate)
|
||||
{
|
||||
@list($annee,$mois,$jour)=explode('-',$maDate);
|
||||
$date="$jour"."/".$mois."/".$annee;
|
||||
return $date;
|
||||
}
|
||||
/**
|
||||
* retourne le mois au format aaaamm selon le jour dans le mois
|
||||
* @param $date au format jj/mm/aaaa
|
||||
* @return le mois au format aaaamm
|
||||
*/
|
||||
function getMois($date){
|
||||
@list($jour,$mois,$annee) = explode('/',$date);
|
||||
if(strlen($mois) == 1){
|
||||
$mois = "0".$mois;
|
||||
}
|
||||
return $annee.$mois;
|
||||
}
|
||||
|
||||
/**
|
||||
* retourne la date en texte
|
||||
*/
|
||||
function dateTexte($laDate){
|
||||
$NomDuJour = array ("Dimanche", "Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi");
|
||||
$NomDuMois = array ("janvier", "février", "mars", "avril", "mai", "juin", "juillet", "août", "septembre", "octobre", "novembre", "décembre");
|
||||
$lejour = date("j",$laDate);
|
||||
$lemois = $NomDuMois[date("n",$laDate)-1];
|
||||
$dateTexte=$NomDuJour[date("w",$laDate)]." ";
|
||||
if($lejour==01){$dateTexte.=' 1er '; }
|
||||
else {$dateTexte.=$lejour.' ';}
|
||||
$dateTexte.=$lemois.' '.date('Y', $laDate);
|
||||
return $dateTexte;
|
||||
}
|
||||
|
||||
/**
|
||||
* retourne le mois en texte
|
||||
*/
|
||||
function moisTexte($mois){
|
||||
$tabMois = array( '01' => "Janvier",
|
||||
'02' => "Février",
|
||||
'03' => "Mars",
|
||||
'04' => "Avril",
|
||||
'05' => "Mai",
|
||||
'06' => "Juin",
|
||||
'07' => "Juillet",
|
||||
'08' => "Août",
|
||||
'09' => "Septembre",
|
||||
'10' => "Octobre",
|
||||
'11' => "Novembre",
|
||||
'12' => "Décembre");
|
||||
return $tabMois[$mois];
|
||||
}
|
||||
|
||||
/* gestion des erreurs*/
|
||||
/**
|
||||
* Indique si une valeur est un entier positif ou nul
|
||||
* @param $valeur
|
||||
* @return vrai ou faux
|
||||
*/
|
||||
function estEntierPositif($valeur)
|
||||
{
|
||||
return preg_match("/[^0-9]/", $valeur) == 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Indique si un tableau de valeurs est constitué d'entiers positifs ou nuls
|
||||
* @param $tabEntiers : le tableau
|
||||
* @return vrai ou faux
|
||||
*/
|
||||
function estTableauEntiers($tabEntiers)
|
||||
{
|
||||
$ok = true;
|
||||
foreach($tabEntiers as $unEntier)
|
||||
{
|
||||
if(!estEntierPositif($unEntier)){$ok=false;}
|
||||
}
|
||||
return $ok;
|
||||
}
|
||||
/**
|
||||
* Vérifie si une date est inférieure d'un an à la date actuelle
|
||||
* @param $dateTestee
|
||||
* @return vrai ou faux
|
||||
*/
|
||||
function estDateDepassee($dateTestee)
|
||||
{
|
||||
$dateActuelle=date("d/m/Y");
|
||||
@list($jour,$mois,$annee) = explode('/',$dateActuelle);
|
||||
$annee--;
|
||||
$AnPasse = $annee.$mois.$jour;
|
||||
@list($jourTeste,$moisTeste,$anneeTeste) = explode('/',$dateTestee);
|
||||
return ($anneeTeste.$moisTeste.$jourTeste < $AnPasse);
|
||||
}
|
||||
/**
|
||||
* Vérifie la validité du format d'une date française jj/mm/aaaa
|
||||
* @param $date
|
||||
* @return vrai ou faux
|
||||
*/
|
||||
function estDateValide($date){
|
||||
$tabDate = explode('/',$date);
|
||||
$dateOK = true;
|
||||
if (count($tabDate) != 3) {
|
||||
$dateOK = false;
|
||||
}
|
||||
else {
|
||||
if (!estTableauEntiers($tabDate)) {
|
||||
$dateOK = false;
|
||||
}
|
||||
else {
|
||||
if (!checkdate($tabDate[1], $tabDate[0], $tabDate[2])) {
|
||||
$dateOK = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
return $dateOK;
|
||||
}
|
||||
|
||||
/**
|
||||
* Ajoute le libelle d'une erreur au tableau des erreurs
|
||||
* @param $msg : le libellé de l'erreur
|
||||
*/
|
||||
function ajouterErreur($msg){
|
||||
if (! isset($_REQUEST['erreurs'])){
|
||||
$_REQUEST['erreurs']=array();
|
||||
}
|
||||
$_REQUEST['erreurs'][]=$msg;
|
||||
}
|
||||
|
||||
/**
|
||||
* Retoune le nombre de lignes du tableau des erreurs
|
||||
* @return le nombre d'erreurs
|
||||
*/
|
||||
function nbErreurs(){
|
||||
if (!isset($_REQUEST['erreurs'])){
|
||||
return 0;
|
||||
}
|
||||
else{
|
||||
return count($_REQUEST['erreurs']);
|
||||
}
|
||||
}
|
||||
|
||||
/** afficherErreurSQL :
|
||||
Affichage de messages lors l'accès à la bdd avec une requete SQL
|
||||
@param $message : message a afficher
|
||||
@param $req : requete executee
|
||||
@param $info : erreur constatee
|
||||
*/
|
||||
function afficherErreurSQL($message, $req, $info) {
|
||||
echo $message . "<br />";
|
||||
echo "Requete : " . $req . "<br />";
|
||||
echo "Code erreur : " . $info[0] . ", Message : " . $info[2];
|
||||
die();
|
||||
}
|
||||
?>
|
Reference in New Issue
Block a user