rattrapage

This commit is contained in:
root 2022-03-31 10:34:13 +02:00
parent 085432c35e
commit c2687df8fc
61 changed files with 0 additions and 1100 deletions

View File

@ -1,57 +0,0 @@
<?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;
}
}
?>

View File

@ -1,79 +0,0 @@
<?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;
}
}
?>

View File

@ -1,152 +0,0 @@
<?php
/**
* @author :Pascal BLAIN, lycee le castel à Dijon
* @version :2022-03-09
* Classe d'acces aux donnees. Utilise les services de la classe PDO pour l'application
* Les attributs sont tous statiques, les 4 premiers pour la connexion
* $monPdo est de type PDO - $monPdoBD contient l'unique instance de la classe
* @link http://www.php.net/manual/fr/book.pdo.php
*/
class PdoBD
{
private static $serveur='mysql:host=localhost';
private static $bdd='dbname=gsb2022';
private static $user='sio';
private static $mdp='Sio2023';
private static $monPdo;
private static $monPdoBD=null;
private function __construct()
{
PdoBD::$monPdo = new PDO(PdoBD::$serveur.';'.PdoBD::$bdd, PdoBD::$user, PdoBD::$mdp);
PdoBD::$monPdo->query("SET CHARACTER SET utf8");
}
public function _destruct()
{
PdoBD::$monPdo = null;
}
/**
* Fonction statique qui cree l'unique instance de la classe PdoBD
*/
public static function getPdoBD()
{
if(PdoBD::$monPdoBD==null) {PdoBD::$monPdoBD= new PdoBD();}
return PdoBD::$monPdoBD;
}
/** ---------------------------------------------- module Connexion
*
* dernière modif le : 09/03/2022 par Pascal Blain
* Retourne les informations d'un utilisateur sous la forme d'un tableau associatif
*/
public function getInfosUtilisateur($login,$mdp)
{
$req = "SELECT uId,uNom,uPrenom,uLogin,uMdp,uAdresse,uCP,uVille,uDateEmbauche,uSecteur,uStatut,uRegion,
st.pLibelle as wStatut,s.pLibelle as wSecteur,r.pLibelle as wRegion,uLabo,lNom
FROM utilisateur
INNER JOIN parametre st ON (st.pType='statUti' AND st.pIndice=uStatut)
INNER JOIN parametre r ON (r.pType='region' AND r.pIndice=uRegion)
INNER JOIN parametre s ON (s.pType='secteur' AND s.pIndice=uSecteur)
INNER JOIN labo ON uLabo=lCode";
if ($login==="*")
{$req.=" WHERE uId='$mdp';";}
else
{$req.=" WHERE uLogin='$login'
AND uMdp='$mdp';";}
//echo $req;
$rs = PdoBD::$monPdo->query($req);
if ($rs === false) {afficherErreurSQL("Probleme lors de la lecture des informations d'un utilisateur...", $req, PdoBD::$monPdo->errorInfo());}
$ligne = $rs->fetch();
return $ligne;
}
/** ---------------------------------------------- Fin module Connexion
*/
/** ---------------------------------------------- gestion des PARAMETRES
/**
* Retourne les informations de la table TYPEPARAMETRE
*/
public function getLesParametres()
{
$req = "SELECT tlId, tlLibelle, tlBooleen, tlChoixMultiple, tlCumul
FROM typeParametre
ORDER BY tlLibelle;";
$rs = PdoBD::$monPdo->query($req);
if ($rs === false) {afficherErreurSQL("Probleme lors de la recherche dans la base de donn&eacute;es.", $req, PdoBD::$monPdo->errorInfo());}
$lesLignes = $rs->fetchAll();
return $lesLignes;
}
/**
* Retourne dans un tableau associatif les informations de la table PARAMETRE (pour un type particulier)
*/
public function getParametre($type)
{
$req = "SELECT pIndice, pLibelle, pCategorie
FROM parametre
WHERE pType='$type'
ORDER by pIndice;";
$rs = PdoBD::$monPdo->query($req);
if ($rs === false) {afficherErreurSQL("Probleme lors de la recherche des parametres dans la base de donn&eacute;es.", $req, PdoBD::$monPdo->errorInfo());}
$lesLignes = $rs->fetchAll();
return $lesLignes;
}
/**
* Retourne dans un tableau associatifles informations de la table PARAMETRE (pour un type particulier)
*/
public function getInfosParam($type, $valeur)
{
if ($valeur=="NULL")
{$req = "SELECT pType, max(pIndice)+1 AS pIndice, ' ' AS pLibelle, tlLibelle, pPlancher, pPlafond
FROM parametre INNER JOIN typeParametre ON typeParametre.tlId=parametre.pType
WHERE pType='$type';";
}
else
{$req = "SELECT pType, pIndice, pLibelle, tlLibelle, pPlancher, pPlafond
FROM parametre INNER JOIN typeParametre ON typeParametre.tlId=parametre.pType
WHERE pType='$type'
AND pIndice like '$valeur';";
}
$rs = PdoBD::$monPdo->query($req);
if ($rs === false) {afficherErreurSQL("Probleme lors de la recherche dans la base de donn&eacute;es.", $req, PdoBD::$monPdo->errorInfo());}
$ligne = $rs->fetch();
return $ligne;
}
/**
* Met a jour une ligne de la table PARAMETRE
*/
public function majParametre($type, $valeur, $libelle, $territoire, $dep, $plancher, $plafond)
{
$req = "UPDATE parametre SET pLibelle='$libelle', pPlancher=$plancher, pPlafond=$plafond
WHERE pType='$type'
AND pIndice=$valeur;";
$rs = PdoBD::$monPdo->exec($req);
if ($rs === false) {afficherErreurSQL("Probleme lors de la mise a jour des parametres dans la base de donn&eacute;es.", $req, PdoBD::$monPdo->errorInfo());}
}
/**
* supprime une ligne de la table PARAMETRE
*/
public function supprimeParametre($type, $valeur)
{
$req = "DELETE
FROM parametre
WHERE pType='$type'
AND pIndice=$valeur;";
$rs = PdoBD::$monPdo->exec($req);
if ($rs === false) {afficherErreurSQL("Probleme lors de la suppression d'un parametre dans la base de donn&eacute;es.", $req, PdoBD::$monPdo->errorInfo());}
}
/**
* ajoute une ligne dans la table PARAMETRE
*/
public function ajoutParametre($type, $valeur, $libelle,$territoire, $dep, $plancher, $plafond)
{
$req = "INSERT INTO parametre
(pType, pIndice, pLibelle, pPlancher, pPlafond)
VALUES ('$type', $valeur, '$libelle', $plancher, $plafond);";
$rs = PdoBD::$monPdo->exec($req);
if ($rs === false) {afficherErreurSQL("Probleme lors de l'insertion d'un parametre dans la base de donn&eacute;es.", $req, PdoBD::$monPdo->errorInfo());}
}
/** ---------------------------------------------- fin gestion des PARAMETRES
*/
}
?>

View File

@ -1,210 +0,0 @@
<?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&agrave;me technique, votre message n a pas &acute;t&acute; envoy&acute; 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&eacute;vrier", "mars", "avril", "mai", "juin", "juillet", "ao&ucirc;t", "septembre", "octobre", "novembre", "d&eacute;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&eacute;vrier",
'03' => "Mars",
'04' => "Avril",
'05' => "Mai",
'06' => "Juin",
'07' => "Juillet",
'08' => "Ao&ucirc;t",
'09' => "Septembre",
'10' => "Octobre",
'11' => "Novembre",
'12' => "D&eacute;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 &agrave; 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();
}
?>

View File

@ -1,35 +0,0 @@
<?php
session_start();
// ****************************************'
// Le CASTEL-BTS SIO/ PROJET GSB PPE2 '
// Programme: index.php '
// Objet : page principale '
// Client : Bts SIO1 '
// Version : 22.03 '
// Date : 09/03/2022 à 19h00 '
// Auteur : pascal.blain@ac-dijon.fr '
//*****************************************'
require_once("controleurs/fonctionsProjet.inc");
require_once ("modele/classPDO.php");
$pdo = PdoBD::getPdoBD();
$estConnecte = estConnecte();
// on vérifie que l'utilisateur est authentifié
if(!isset($_REQUEST['choixTraitement']) || !$estConnecte){$_REQUEST['choixTraitement'] = 'connexion';}
// on analyse le cas d'utilisation en cours ...
$choixTraitement= $_REQUEST['choixTraitement'];
switch($choixTraitement)
{
case 'connexion' : {include("controleurs/c_connexion.php");break;}
case 'visite' : {include("controleurs/c_visite.php");break;}
case 'praticien' : {include("controleurs/c_praticien.php");break;}
case 'statistiques' : {include("controleurs/c_statistiques.php");break;}
case 'param' : {include("controleurs/c_param.php");break;}
case 'utilisateur' : {include("controleurs/c_utilisateur.php");break;}
default : {echo 'erreur d\'aiguillage !'.$choixTraitement;break;}
}
include("vues/v_pied.php") ;
?>

View File

@ -1,248 +0,0 @@
// version modifiée le 17 decembre 2013 par Pascal Blain
var ongletActif=1;
// ========================= passer le focus à un champ
function donner_focus(frm,champ) {
document.forms[frm].elements[champ].focus();
}
// ========================= fonctions de navigation dans la liste de choix
function premier(frm, liste) {
document.forms[frm].elements[liste].value = document.forms[frm].elements[liste].options[0].value;
document.forms[frm].submit();
}
function precedent(frm, liste) {
document.forms[frm].elements[liste].value = document.forms[frm].elements[liste].options[Math.max(0,document.forms[frm].elements[liste].selectedIndex-1)].value;
document.forms[frm].submit();
}
function suivant(frm, liste) {
document.forms[frm].elements[liste].value = document.forms[frm].elements[liste].options[(Math.min((document.forms[frm].elements[liste].options.length-1),document.forms[frm].elements[liste].selectedIndex+1))].value;
document.forms[frm].submit();
}
function dernier(frm, liste) {
document.forms[frm].elements[liste].value = document.forms[frm].elements[liste].options[(document.forms[frm].elements[liste].options.length-1)].value;
document.forms[frm].submit();
}
// =========================
function faire(frm, action) {
document.forms[frm].action.value = action;
if(action=="supprimer") {alert("ATTENTION : \n demande de suppression \n cette action est irreversible !");}
document.forms[frm].submit();
}
// =========================
function validerAutre(frm, ordreAc, ordreCe, onglet)
{
document.getElementById("zOrdreAc").value=ordreAc;
document.getElementById("zOrdreCe").value=ordreCe;
document.getElementById("zOnglet").value=onglet;
document.forms[frm].submit();
}
// =========================
function voirListe(type, indice, colonne)
{
document.forms["choixP"].zType.value=type;
document.forms["choixP"].zIndice.value=indice;
document.forms["choixP"].zColonne.value=colonne;
document.forms["choixP"].action.value = "liste";
document.forms["choixP"].submit();
}
// ========================= fonction annulation de saisie ou modification
function annuler(frm){
document.forms[frm].elements["zOk"].value="nonOk";
document.forms[frm].submit();
}
// ========================= validation des données d'un usager (version 2)
function validerUsager(frm)
{ //var champ=frm.elements["ztNom"];
if(!verifTexte(frm, frm.elements["ztNom"], 40)) {return false;}
else {if(!verifTexte(frm, frm.elements["ztPrenom"], 24)) {return false;}
else {if(!verifMail(frm, frm.elements["ztEMail"])) {return false;}
else {return true;}
}
}
}
// =========================
function verifMail(frm, champ)
{
var regex = /^[a-zA-Z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$/;
if(regex.test(champ.value) || champ.value.length<1)
{surligne(champ, false); return true;}
else
{surligne(champ, true); return false;}
}
// ========================= fonctions de controle de validité d'un champ
function surligne(frm, champ, erreur)
{
if(erreur)
{champ.style.backgroundColor = "#f55"; alert("Champ '"+champ.id+"' incorrect ...\nMerci de corriger"); document.getElementById(champ.id).focus(); frm.elements["zOk"].value="nonOk";}
else
{champ.style.backgroundColor = "#fff"; frm.elements["zOk"].value="OK";}
}
// ========================= fonctions de controle de validité d'un champ texte (longueur)
function verifTexte(frm, champ,longueur)
{
if(champ.value.length < 2 || champ.value.length > longueur)
{surligne(frm, champ, true); return false;}
else
{surligne(frm, champ, false); return true;}
}
// ========================= fonctions de controle de validité du code postal
function verifCP(frm, champ)
{ var str = champ.value;
var insee = str.substring(0,5);
var dep = str.substring(0,2);
var cPostal = str.substring(6,11);
var secteur= str.substring(12,16);
var ville = str.substring(17,57);
var cp = parseInt(cPostal);
if(isNaN(cp) || cp < 1000 || cp > 99999) {surligne(frm, champ, true); alert(cp); return false;} //
else { surligne(frm, champ, false);
frm.elements["ztCP"].value =cPostal;
frm.elements["ztVille"].value =ville;
frm.elements["ztCommune"].value =insee;
frm.elements["departement"].value =dep;
if(frm.name="frmUsager")
{
for (var i=0;i<frm.elements["ldrSecteur"].length;i++)
{
if(frm.elements["ldrSecteur"].options[i].value==secteur) {frm.elements["ldrSecteur"].selectedIndex=i; i=9999;}
}
}
return true;}
}
// ========================= fonctions de controle de validité d'une date
function verifDate(laDate)
{
var ok=true;
var d=laDate.value;
laDate.style.backgroundColor="#fff";
if(d != null && d != "")
{
var amini=1900; // année mini
var amax=2030; // année maxi
var separateur="/"; // separateur entre jour/mois/annee
var j=(d.substring(0,2));
var m=(d.substring(3,5));
var a=(d.substring(6));
if ( ((isNaN(j))||(j<1)||(j>31)) && (ok==1) ) {alert(j+" n'est pas un jour correct..."); laDate.style.backgroundColor="#f55"; ok=false;}
if ( ((isNaN(m))||(m<1)||(m>12)) && (ok==1) ) {alert(m+" n'est pas un mois correct ..."); laDate.style.backgroundColor="#f55"; ok=false;}
if ( ((isNaN(a))||(a<amini)||(a>amax)) && (ok==1) ) {alert(a+" n'est pas une année correcte: utiliser 4 chiffres, \n elle doit être comprise entre "+amini+" et "+amax); laDate.style.backgroundColor="#f55"; ok=false;}
if ( ((d.substring(2,3)!=separateur)||(d.substring(5,6)!=separateur)) && (ok==1) ) {alert("Les séparateurs doivent être des "+separateur); laDate.style.backgroundColor="#f55"; ok=false;}
if (ok==true) {
var d2=new Date(a,m-1,j);
j2=d2.getDate();
m2=d2.getMonth()+1;
a2=d2.getFullYear();
if (a2<=100) {a2=1900+a2}
if ( (j!=j2)||(m!=m2)||(a!=a2) ) {alert("La date "+d+" n'existe pas !"); laDate.style.backgroundColor="#f55"; ok=false;}
}
}
return ok;
}
// ========================= formate un nombre avec 2 chiffres après la virgule et un espace separateur de milliers
function format_euro(valeur) {
var ndecimal=2;
var separateur=' ';
var deci=Math.round( Math.pow(10,ndecimal)*(Math.abs(valeur)-Math.floor(Math.abs(valeur)))) ;
var val=Math.floor(Math.abs(valeur));
if ((ndecimal==0)||(deci==Math.pow(10,ndecimal))) {val=Math.floor(Math.abs(valeur)); deci=0;}
var val_format=val+"";
var nb=val_format.length;
for (var i=1;i<4;i++)
{
if (val>=Math.pow(10,(3*i)))
{
val_format=val_format.substring(0,nb-(3*i))+separateur+val_format.substring(nb-(3*i));
}
}
if (ndecimal>0)
{
var decim="";
for (var j=0;j<(ndecimal-deci.toString().length);j++) {decim+="0";}
deci=decim+deci.toString();
val_format=val_format+","+deci;
}
if (parseFloat(valeur)<0) {val_format="-"+val_format;}
return val_format;
}
// ========================= affiche l'onglet choisi
function Affiche(ongletChoisi, nb)
{
for(i=1;i<nb+1;i++)
{
document.getElementById('onglet'+i).className = 'inactif onglet';
document.getElementById('contenuOnglet'+i).style.display = 'none';
}
document.getElementById('onglet'+ongletChoisi).className = 'actif onglet';
document.getElementById('contenuOnglet'+ongletChoisi).style.display = 'block';
document.getElementById('zOnglet').value=ongletChoisi;
document.getElementById('zNbOnglets').value=nb;
ongletActif=ongletChoisi;
}
// ========================= transfert des données dune liste à une autre
function deplacer_elements(frm, origine, destination) {
if (origine.options.selectedIndex >= 0)
{
while (origine.options.selectedIndex >= 0) /* boucle tant qu'il reste des éléments sélectionnés */
{
valeur = origine.options[origine.options.selectedIndex].value; /* valeur de l'élément sélectionné */
texte = origine.options[origine.options.selectedIndex].text; /* texte de l'élément sélectionné */
origine.options[origine.options.selectedIndex] = null; /* suppression de l'element selectione dans la liste d'origine */
destination.options[destination.options.length] = new Option(texte, valeur);/* ajout dans la liste destination */
}
var nbElements=destination.length;
var tbl = new Array(nbElements, 2)
for(ligne=0;ligne<nbElements;ligne++){
tbl[ligne] = new Array(destination.options[ligne].text, destination.options[ligne].value);
}
tbl.sort(triAlpha);
destination.options.length=0; /* efface la liste */
for(ligne=0;ligne<nbElements;ligne++){
destination.options[destination.options.length]=new Option(tbl[ligne][0],tbl[ligne][1]); //rempli la liste avec les données triees
}
}
else
alert("choisissez au moins un participant !");
return(false);
}
// =========================
function triAlpha(a,b) {
a = a[0];
b = b[0];
return a == b ? 0 : (a < b ? -1 : 1)
}
// =========================
function tester(frm, liste) {
var nbElements=liste.length;
var tbl = new Array(nbElements, 2)
for(ligne=0;ligne<nbElements;ligne++){
tbl[ligne] = new Array(liste.options[ligne].text, liste.options[ligne].value);
//alert("Valeur : " + tbl[ligne][1] + " Texte :" + tbl[ligne][0]);
}
tbl.sort(triAlpha);
liste.options.length=0; //efface la liste
for(ligne=0;ligne<nbElements;ligne++){
liste.options[liste.options.length]=new Option(tbl[ligne][0],tbl[ligne][1]); //rempli la liste avec les données triees
// alert("Valeur : " + tbl[element,1] + " libellé : " + tbl[element,0]);
}
result = tbl.join('\n');
alert(result);
return (false);
}
// =========================trouver un code postal en france, ou une commune
// parametres d'entrée : (L'un des 2 champs ne doit pas être vide. Sinon, c'est Paris qui est pris par défaut.)
// - codePostal : l'ID du champs contenant le code postal
// - ville : l'ID du champs contenant le nom de la commune
function openCodesPostaux(codePostal, ville){
var leCodePostal = document.getElementById(codePostal).value;
var laVille = document.getElementById(ville).value;
if(laVille == ""){ laVille = leCodePostal;}
window.open( 'http://www.codes-postaux.org/outils/module.php?Choix=' + escape(laVille) ,'CodePostal','scrollbars=yes, width=300, height=550');
}

View File

@ -1,44 +0,0 @@
<!-- choix d'un parametre / Derniere modification le 26 mars 2020 par Pascal Blain -->
<?php
$nbP=count($lesParametres);
echo '
<form name="choixP" action="index.php" method="post">
<h2>'.$titre; ?>
<select name="lstParam" STYLE="width:350px;" onchange="submit();">
<?php
if (!isset($_REQUEST['lstParam'])) {$choix = 'premier';} else {$choix =$_REQUEST['lstParam'];}
$i=1;
foreach ($lesParametres as $unParametre)
{
if($unParametre['tlId'] == $choix or $choix == 'premier')
{echo "<option selected value=\"".$unParametre['tlId']."\">".$unParametre['tlLibelle']."</option>\n ";
$choix = $unParametre['tlId'];
$titre1= $unParametre['tlLibelle'];
$noP=$i;
}
else
{echo "<option value=\"".$unParametre['tlId']."\">".$unParametre['tlLibelle']."</option>\n ";
$i=$i+1;}
}
if ($_REQUEST['action']<>"liste") {$action = $_REQUEST['action'];} else {$action = "voir";}
echo '
</select></h2>
<input type="hidden" name="choixTraitement" value="param">
<input type="hidden" name="action" value="'.$action.'">
<input type="hidden" name="zType" value="*">
<input type="hidden" name="zIndice" value="0">
<input type="hidden" name="zColonne" value="0">';
?>
<!-- ============================================================== navigation dans la liste -->
<div id='navigation'>
<input type="image" id="zPremier" title="premier" src="images/goPremier.gif" onclick="premier('choixP','lstParam')">
<input type="image" id="zPrecedent" title="pr&eacute;c&eacute;dent" src="images/goPrecedent.gif" onclick="precedent('choixP','lstParam')">
<?php echo ' <input type="text" id="zNumero" value="'.$noP.'/'.$nbP.'" disabled="true" size="5" style="text-align:center;vertical-align:top;">'; ?>
<input type="image" id="zSuivant" title="suivant" src="images/goSuivant.gif" onclick="suivant('choixP','lstParam')">
<input type="image" id="zDernier" title="dernier" src="images/goDernier.gif" onclick="dernier('choixP','lstParam')">
</div>
</form>
<!-- fin liste de choix -->

View File

@ -1,19 +0,0 @@
<h2>Merci de vous identifier pour acc&eacute;der aux dossiers</h2>
<form name="frmIdentification" method="POST" action="index.php?choixTraitement=connexion&action=valideConnexion">
<fieldset><legend>Identification utilisateur</legend>
<br /><br />
<label for="nom">Nom du compte*</label>
<input id="login" type="text" name="login" size="30" maxlength="45" placeholder="Entrez votre nom d'Utilisateur">
</p>
<p>
<label for="mdp">Mot de passe&nbsp;&nbsp;&nbsp;&nbsp;*</label>
<input id="mdp" type="password" name="mdp" size="30" maxlength="45" placeholder="Entrez votre Mot de Passe">
</p><br /><br />
<input type="submit" name="valider" value="Valider">
<input type="reset" name="annuler" value="Annuler">
</p>
</fieldset>
</form>
<br /><br />
</div>

View File

@ -1,47 +0,0 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Galaxy Swiss Bourdin</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<link href="./styles/styles.css" rel="stylesheet" type="text/css" />
<link rel="shortcut icon" type="image/x-icon" href="./images/favicon.ico" />
<script src="./vues/proceduresJava.js" type="text/javascript"></script>
</head>
<?php
(isset($_REQUEST['zFormulaire'])) ?$formulaire=$_REQUEST['zFormulaire']:$formulaire="choixP";
(isset($_REQUEST['zChamp'])) ?$champ=$_REQUEST['zChamp']:$champ="lstParam";
if (!isset($titre)) {$titre ="";}
?>
<body onload="donner_focus('<?php echo $formulaire."','".$champ;?>');">
<div id="page">
<div id="entete">
<img src="./images/logoGSB.jpg" id="logo" alt="Laboratoire Galaxy Swiss Bourdin" title="Gestion des comptes-rendus de visites" />
<div id="sommaire">
<?php if (isset($_SESSION['idUtilisateur']))
{echo '
<ul>
<li><a href="index.php?choixTraitement=visite&action=voir" title="Visites">Visites</a>|</li>
<li><a href="index.php?choixTraitement=praticien&action=voir" title="Praticiens">Praticiens</a>|</li>
<li><a href="index.php?choixTraitement=statistiques&action=voir" title="Statistiques">Statistiques</a>|</li>';
if ($_SESSION['statut']==0)
{echo '
<li><a href="index.php?choixTraitement=utilisateur&action=voir&type=a">Visiteurs</a>|</li>
<li><a href="index.php?choixTraitement=param&action=voir" title="Parametres">Parametres</a>|</li>';
}
else
{echo '
<li><a href="index.php?choixTraitement=utilisateur&action=voir&type=a">Mon profil</a>|</li>';
}
echo '
<li><b>Bienvenue '.$_SESSION['prenom'].' '.strtoupper($_SESSION['nom']).' </b></li>
<li style="text-align:left;"><a href="index.php?choixTraitement=connexion&action=demandeConnexion" title="Se d&eacute;connecter"><img alt="déconnexion" src="images/deconnexion.png" border="0" height="26px"></a></li>
</ul>';
}
?>
<h1>Gestion des Comptes-Rendus de visites</h1>
</div>
</div>
<div id="contenu">
<!-- fin affichage du menu -->

View File

@ -1,10 +0,0 @@
<div class ="erreur">
<ul>
<?php
foreach($_REQUEST['erreurs'] as $erreur)
{
echo "<li>$erreur</li>";
}
?>
</ul>
</div>

View File

@ -1,100 +0,0 @@
<!-- affichage du détail d'un type de parametre / Dernière modification le 11 avril 2020 par Pascal BLAIN -->
<?php
echo('
<div id="fiche">
');
/*================================================================================================== */
$nbP=count($lesInfosParametre);
echo("
<div>
<fieldset><legend>Parametre</legend>
<table>
<tr><th style='width:25px;text-align:center;'><a href='index.php?choixTraitement=param&action=ajouter&type=".$enteteParametre['tlId']."&valeur=NULL'><img title='Ajouter une valeur' src='images/ajout.gif'></a></th><th style='width:25px;'>Code</th><th style='text-align:center;'>Description</th><th style='width:70px;'>Booléen</th><th style='width:70px;'>Choix multiples</th></tr>
<tr><td>&nbsp;</td><td>".$enteteParametre['tlId']."</td><td>".$enteteParametre['tlLibelle']."</td><td style='text-align:center;'>".$enteteParametre['tlBooleen']."</td><td style='text-align:center;'>".$enteteParametre['tlChoixMultiple']."</td></tr>
</table>
</fieldset><br />
<table style='border: 0px solid white;'>
<tr>
<td style='border :0px;'>
<fieldset><legend>Valeurs</legend>
<table>");
$numPa=1;
foreach ($lesInfosParametre as $uneLigne)
{
if ($numPa<10)
{$numPa=$numPa+1;
$type = $choix;
$indice = $uneLigne['pIndice'];
echo("<tr> <th style='width:20px;text-align:center;'>".$uneLigne['pIndice']."</th> <td>".$uneLigne['pLibelle']."</td>
<td style='width:20px;text-align:center;'>");
echo("</td>
<td style='width:10px;text-align:center;'><a href='index.php?choixTraitement=param&action=modifier&type=".$enteteParametre['tlId']."&valeur=".$uneLigne['pIndice']."'><img src='images/modif.gif' title='modifier'></a></td>
<td style='width:10px;text-align:center;'>");
echo ("
<a href='index.php?choixTraitement=param&action=supprimer&type=".$enteteParametre['tlId']."&valeur=".$uneLigne['pIndice']."'><img title='Supprimer' src='images/supprimer.gif'></a>");
echo ("
</td></tr>");
}
}
while ($numPa<10)
{
echo("<tr> <th style='width:25px;'>&nbsp;</th> <td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td> </tr>");
$numPa=$numPa+1;
}
echo("
</table>
</fieldset></td>");
if ($nbP>=10)
{
echo("
<td style='border :0px;'>
<fieldset><legend>(suite)</legend>
<table>");
$numP=1;
foreach ($lesInfosParametre as $uneLigne)
{
if ($numP>=10)
{
$type = $choix;
$indice = $uneLigne['pIndice'];
echo("<tr> <th style='width:20px;text-align:center;'>".$uneLigne['pIndice']."</th> <td style='width:140px;'>".$uneLigne['pLibelle']."</td>
<td style='width:20px;text-align:center;'>");
echo("</td>
<td style='width:20px;text-align:center;'><a href='index.php?choixTraitement=param&action=modifier&type=".$enteteParametre['tlId']."&valeur=".$uneLigne['pIndice']."'><img src='images/modif.gif' title='modifier'></a></td>
<td style='width:20px;text-align:center;'>");
echo ("
<a href='index.php?choixTraitement=param&action=supprimer&type=".$enteteParametre['tlId']."&valeur=".$uneLigne['pIndice']."'><img title='Supprimer' src='images/supprimer.gif'></a>");
echo ("
</td></tr>");
}
$numP=$numP+1;
}
if ($numP<10) {$numP=10;}
while ($numP<19)
{
echo("<tr> <th style='width:20px;text-align:center;'>&nbsp;</th> <td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td> </tr>");
$numP=$numP+1;
}
echo("
</table>
</fieldset>
</td>");
}
echo("
</tr>
</table>
<fieldset><legend>Observations</legend>
<table style='border: 0px solid white;'>
<tr>
<td>...</td>
</tr>
</table>
</fieldset>
</div>
</div>");
?>

View File

@ -1,5 +0,0 @@
<!-- Division pour le pied de page -->
<hr /><p style="text-align:center;"><?php echo "Lyc&eacute;e Le Castel &agrave; Dijon - BTS SIO 1 - (c)2022 Blain Pascal";?></p>
</body>
</html>

View File

@ -1,94 +0,0 @@
<!-- Derniere modification le 9 avril 2020 par Pascal Blain -->
<?php
if ($action==="supprimer")
{echo '<h2>SUPPRESSION DE LA VALEUR D\'UN PARAMETRE</h2>';
echo "<form name='frmParam' action='index.php?choixTraitement=param&action=validerSupprimer&type=".$infosParam['pType']."&valeur=".$infosParam['pIndice']."' method='post'>";}
if ($action==="modifier")
{echo '<h2>MODIFICATION DE LA VALEUR D\'UN PARAMETRE</h2>';
echo "<form name='frmParam' action='index.php?choixTraitement=param&action=validerModifier&type=".$infosParam['pType']."&valeur=".$infosParam['pIndice']."' method='post'>";}
if ($action==="ajouter")
{echo '<h2>AJOUT DE LA VALEUR D\'UN PARAMETRE</h2>';
echo "<form name='frmParam' action='index.php?choixTraitement=param&action=validerAjouter&type=".$infosParam['pType']."' method='post'>";}
?>
<!-- Affichage des valeurs dans un tableau r&eacute;capitulatif. -->
<div>
<table style='border: 0px solid white;'>
<tr><td style='border :0px;'>
<fieldset><legend><?php echo $infosParam['tlLibelle'] ?></legend>
<?php
if ($infosParam['pType']==="secteur")
{
echo (" <table>
<tr> <th>Indice</th> <td>");
if ($_REQUEST['action']==="ajouter") {echo "<input class='controle' type='text' name='valeur' value='".$infosParam['pIndice']."'>";}
else {echo $infosParam['pIndice'];}
echo (" </td> </tr>
<tr> <th>Valeur</th> <td>");
if ($_REQUEST['action']==="ajouter") {echo "<input class='controleLong' type='text' name='zLibelle'>";}
if ($_REQUEST['action']==="modifier") {echo "<input class='controleLong' type='text' name='zLibelle' value='".$infosParam['pLibelle']."'>";}
if ($_REQUEST['action']==="supprimer") {echo $infosParam['pLibelle'];}
echo (" </td> </tr>
<tr> <th>Territoire</th> <td>");
if ($_REQUEST['action']==="ajouter") {echo "<input class='controle' type='text' name='zTerritoire'>";}
if ($_REQUEST['action']==="modifier") {echo "<input class='controle' type='text' name='zTerritoire' value='".$infosParam['territoire']."'>";}
if ($_REQUEST['action']==="supprimer") {echo $infosParam['territoire'];}
echo (" </td> </tr>
<tr> <th>D&eacute;partement</th> <td>");
if ($_REQUEST['action']==="ajouter") {echo "<input class='controle' type='text' name='zDep'>";}
if ($_REQUEST['action']==="modifier") {echo "<input class='controle' type='text' name='zDep' value='".$infosParam['dep']."'>";}
if ($_REQUEST['action']==="supprimer") {echo $infosParam['dep'];}
echo (" </td> </tr>
<INPUT type='hidden' name='choixOrientation' value='0'>
<INPUT type='hidden' name='zPlancher' value='0'>
<INPUT type='hidden' name='zPlafond' value='0'>
</table>");
}
else
{
echo (" <table>
<tr> <th>Indice</th> <td>");
if ($action==="ajouter") {echo "<input class='controle' type='text' name='valeur' value='".$infosParam['pIndice']."'>";}
else {echo $infosParam['pIndice'];}
echo (" </td> </tr>
<tr> <th>Valeur</th> <td>");
if ($action==="ajouter") {echo "<input class='controle' type='text' name='zLibelle'>";$actif=null;}
if ($action==="modifier") {echo "<input class='controleLong' type='text' name='zLibelle' value='".$infosParam['pLibelle']."'>";$actif=null;}
if ($action==="supprimer") {echo $infosParam['pLibelle'];$actif="disabled='disabled'";}
echo (" </td> </tr>");
if($infosParam['pType'] === "motifSo")
{
echo ("<tr> <th>R&eacute;orientation </th> <td>");
if($infosParam['pPlancher'] == 1)
{echo ("
<INPUT type='radio' name='choixOrientation' value='1' ".$actif." checked>oui
<INPUT type='radio' name='choixOrientation' value='0' ".$actif.">Non</td> </tr>");}
else
{echo ("
<INPUT type='radio' name='choixOrientation' value='1' ".$actif.">oui
<INPUT type='radio' name='choixOrientation' value='0' ".$actif." checked>Non</td> </tr>");}
echo (" <INPUT type='hidden' name='zPlancher' value='0'>
<INPUT type='hidden' name='zPlafond' value='0'>");
}
else
{ echo ("
<tr> <th>Plancher</th> <td><input class='controle' type='text' name='zPlancher' value='".$infosParam['pPlancher']."'></td> </tr>
<tr> <th>Plafond</th> <td><input class='controle' type='text' name='zPlafond' value='".$infosParam['pPlafond']."'></td> </tr>");}
echo ("
</table>
<input type='hidden' name='zTerritoire' value='NULL'><input type='hidden' name='zDep' value='NULL'>");
} ?>
</fieldset>
</td>
</tr>
</table>
</div>
<p align="right">
<input type="hidden" name="zOk" value="OK">
<input type="image" name="btValider" alt="Valider" src="images/valider.jpg" onclick="this.form.submit();">
<input type="image" name="btAnnuler" alt="Annuler" src="images/annuler.jpg" onclick="annuler('frmParam');">
</p>
</form>
</div>

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 180 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 135 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 90 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 57 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 208 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 271 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 597 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 405 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 601 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 509 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 107 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 499 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 879 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB