Ajout de connexion à la bdd + script SQL + page projets en cours de reflexion

This commit is contained in:
Esteban
2026-05-29 09:15:19 +02:00
parent 1d1eea4968
commit caf9bded6d
8 changed files with 136 additions and 6 deletions
+30
View File
@@ -0,0 +1,30 @@
<?php
// J'héberge un serveur de base de donnée sur un serveur
// Pour éviter que les identifiants soient lisible sur Gitea je vais appeller un fichier qui n'est pas dans le projet
// EXEMPLE de a quoi ressemble idConnection :
// define('DB_HOST', 'adresse_ip');
// define('DB_PORT', port);
// define('DB_NAME', 'portfolio');
// define('DB_USER', 'srv_portfolio');
// define('DB_PASS', 'mdp');
// On importe le fichier avec les IDs
require_once('../../idConnection.php');
// Connexion à la base grâce à l'API PDO
// Définitions des identifiants de connexion grâce au fichier idConnection
$dsn = 'mysql:host='. DB_HOST . ';port=' . DB_PORT . ';dbname=' . DB_NAME;
$user = DB_USER ;
$pass = DB_PASS ;
try {
// TENTATIVE de connexion
$dbh = new PDO($dsn, $user, $pass);
} catch (PDOException $e) {
// SI erreur, RENVOIE erreur
die("Erreur de connexion à la base de donnée portfolio :".$e->getMessage());
}
+28
View File
@@ -0,0 +1,28 @@
-- On créer la base de donnée si elle n'existe déjà aps
CREATE DATABASE IF NOT EXISTS portfolio
-- On créer un utilisateur avec un mot de passe fort qui est à changer après execution dus script (voir bitwarden)
CREATE USER 'srv_portfolio'@'localhost' IDENTIFIED BY 'mdp';
-- On met les droits au compte sur la base portfolio à l'utilisateur
GRANT ALL ON portfolio.* TO 'srv_portfolio'@'localhost';
-- On actualise les permissions
FLUSH PRIVILEGES;
-- Création de la table user :
CREATE TABLE IF NOT EXISTS users (
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
username VARCHAR(50) NOT NULL,
password VARCHAR(255) NOT NULL, -- Je laisse ici de la place pour prévoir un futur hashage et sallage
role ENUM('admin', 'user') NOT NULL DEFAULT 'user',
created_at DATETIME NULL DEFAULT NULL,
last_login DATETIME NULL DEFAULT NULL,
PRIMARY KEY (id),
UNIQUE INDEX idx_username (username)
);
-- Compte de test
INSERT INTO users (username, password, role)
VALUES ('admin', 'admin', 'admin');