Skip to content

Latest commit

 

History

History
194 lines (153 loc) · 6.42 KB

README.md

File metadata and controls

194 lines (153 loc) · 6.42 KB

Projet BDD 3A

Table des matières


1. Introduction

Application web qui permet de suivre la consommation des citoyens en diverses ressources (Ex: Electricité, gaz, eau,...etc) et l’émission de substances nocives pour l’environnement (Ex: CO2).


2. Configuration

2.1. Connexion à la base de données

Le fichier util/config.php contient les paramètres fonctionnels de l'application. L'utilisateur par défaut de la base de données ainsi que son mot de passe sont renseignés dans le fichier util/sql/di_3a_projet_full.sql, pensez à le modifier si vous souhaitez utiliser un autre utilisateur.

2.1.1. Template

/** URL de base du site */
define( "HOME", "http://link-to-your-site.ext" );

/** Nom de la base de données */
define( "DB_NAME", "my-awesome-database" );

/** Nom d"utilisateur BDD */
define( "DB_USER", "my-handsome-user" );

/** Mot de passe BDD */
define( "DB_PASSWORD", "a-R3@L1y-#_STr0n6_Pa$\$w0R|)_" );

/** MySQL hostname */
define( "DB_HOST", "your-database-host" );

/** MySQL port */
define( "DB_PORT", "your-mysql-listening-port" );

2.2. Définir les actions utilisateurs

Le fichier util/configActionsTables.inc.php contient un tableau de tableaux qui permet de définir les attributs des actions des utilisateurs :

2.2.1. Template

$actions = array(
    'possessions' => array(
        'actionIndex1-1' => array(
            'class'         =>    'a-pretty class',
            'onclick'       =>    'callAwesomeFunction(this);',
            'title'         =>    'This is a title'
        )
    ),
    'locations' => array(
        'actionIndex2-1' => array(
            'attribute1'    =>    'something1',
        ),
        'actionIndex2-2' => array(
            'attribute2'    =>    'whatYouWant',
            'attribute3'    =>    'theValueOfAttribute3',
            'attribute4'    =>    'itCanBeAnythingAndEverything'
        ),
    ),
    'appareils' => array(
        'actionIndex3-1' => array(
            'class'     =>    'fas fa-linux',
            'title'     =>    'It\'s a cool icon isn\'t it?'
        )
    ),
    'admin' => array(
        'actionIndex4-1' => array(
            'id'            =>    'myObject',
            'class'         =>    'an-really cool-class',
            'onclick'       =>    'alert("You clicked on object "+$this.id)',
            'title'         =>    'Alert object\'s id'
        )
    )
);

3. Application

3.1. Scripts de la base de données

Le fichier util/sql/di_3a_projet_full.sql contient le script de de la base de données (structure + données + utilisateur). Le fichier util/sql/di_3a_projet_struct.sql contient le script de création de la structure de la BDD. Il peut être généré/mit à jour par un compte administrateur via le dashboard. Le fichier util/sql/di_3a_projet_data.sql contient un set de données. Il peut être généré/mit à jour par un compte administrateur via le dashboard.

3.2. Comptes utilisateurs (non exhaustif)

Identifiant Mot de passe Rôle
[email protected] root Administrateur
[email protected] root Utilisateur
[email protected] root Utilisateur
[email protected] root Utilisateur
[email protected] root Utilisateur

Pour plus de comptes, se référer à la base de données.

3.3. Villes possédant des rues, immeubles, appartements et pièces (non exhaustif)

idVille Nom de la ville CP
1 Ozan 01190
2 Cormoranche-sur-Saône 0129
3 Plagne 01130
4 Tossiat 01250
... ... ...
96 Le Petit-Abergement 01260
36700 Saint-Pierre-et-Miquelon 97500
25550 Pradeaux 63500

Pour plus de villes, se référer à la base de données.

Requête SQL

Executer cette requête vous renverra la liste des villes qui possèdent des rues, des immeubles, des appartements et des pièces.

SELECT v.*
FROM ville v
INNER JOIN rue r
ON r.idVille = v.idVille
INNER JOIN immeuble i
ON i.idRue = r.idRue
INNER JOIN appartement a
LEFT JOIN piece p
ON  a.idImmeuble = p.idImmeuble
AND a.idAppartement = p.idAppartement
WHERE idPiece IS NOT NULL
GROUP BY v.idVille;

3.4. Etat d'avancement

  • Actions utilisateur
    • Inscription
    • Connexion
    • Modifier les informations
    • Gestion Locations
      • Ajouter une location
      • Supprimer une location
      • Afficher la consommation de l'appartement
      • Appareils
        • Afficher la liste des appareils
        • Ajouter des appareils
        • Modification des appareils
        • Supprimer des appareils
    • Gestion possessions
      • Ajouter une possession
      • Supprimer une possession
  • Actions administrateur
    • Supprimer un utilisateur
    • Modifier les informations utilisateur
    • Modifier rôle utilisateur
    • Ajouter un bâtiment
    • Ajouter un appartement

4. Contributeurs