You are on page 1of 3

------La Base de Donnée

CREATE TABLE users (


id INT PRIMARY KEY AUTO_INCREMENT,
username VARCHAR(50) UNIQUE NOT NULL,
password VARCHAR(255) NOT NULL,
email VARCHAR(100) UNIQUE NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

CREATE TABLE job_posts (


id INT PRIMARY KEY AUTO_INCREMENT,
title VARCHAR(100) NOT NULL,
description TEXT,
job_type ENUM('full-time', 'part-time', 'internship') NOT NULL,
location VARCHAR(100) NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
user_id INT NOT NULL,
FOREIGN KEY (user_id) REFERENCES users(id)
);

CREATE TABLE job_applications (


id INT PRIMARY KEY AUTO_INCREMENT,
first_name VARCHAR(50) NOT NULL,
last_name VARCHAR(50) NOT NULL,
email VARCHAR(100) NOT NULL,
phone VARCHAR(20) NOT NULL,
cover_letter TEXT NOT NULL,
resume VARCHAR(255) NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
job_post_id INT NOT NULL,
FOREIGN KEY (job_post_id) REFERENCES job_posts(id)
);
----La partie Front-End-------------------
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Gestion des demandes de stage et d'emplois</title>

<!-- Styles CSS -->


<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/css/
materialize.min.css">

<!-- JavaScript -->


<script
src="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/js/materialize.min.js
"></script>
</head>
<body>
<nav>
<div class="nav-wrapper">
<a href="#" class="brand-logo">Gestion des demandes</a>
<ul id="nav-mobile" class="right hide-on-med-and-down">
<li><a href="#">Accueil</a></li>
<li><a href="#">Demandes de stage</a></li>
<li><a href="#">Demandes d'emploi</a></li>
</ul>
</div>
</nav>

<div class="container">
<h1>Bienvenue sur notre application de gestion des demandes de stage et
d'emplois</h1>

<div class="row">
<div class="col s12 m6">
<div class="card">
<div class="card-content">
<span class="card-title">Demandes de stage</span>
<p>Gérez les demandes de stage des étudiants</p>
</div>
<div class="card-action">
<a href="#">Voir les demandes de stage</a>
</div>
</div>
</div>
<div class="col s12 m6">
<div class="card">
<div class="card-content">
<span class="card-title">Demandes d'emploi</span>
<p>Gérez les demandes d'emploi des candidats</p>
</div>
<div class="card-action">
<a href="#">Voir les demandes d'emploi</a>
</div>
</div>
</div>
</div>
</div>
</body>
</html>
------------Partie Back-End--------------------------------
<?php

// Connexion à la base de données


$host = "localhost";
$dbname = "gestion_demandes";
$username = "root";
$password = "";
$dsn = "mysql:host=$host;dbname=$dbname";
$options = array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION);

try {
$pdo = new PDO($dsn, $username, $password, $options);
} catch(PDOException $e) {
echo "Erreur de connexion à la base de données : " . $e->getMessage();
die();
}

// Récupération des demandes de stage


function getDemandesStage() {
global $pdo;
$sql = "SELECT * FROM demandes_stage";
$query = $pdo->query($sql);
return $query->fetchAll(PDO::FETCH_ASSOC);
}
// Récupération des demandes d'emploi
function getDemandesEmploi() {
global $pdo;
$sql = "SELECT * FROM demandes_emploi";
$query = $pdo->query($sql);
return $query->fetchAll(PDO::FETCH_ASSOC);
}

// Ajout d'une demande de stage


function ajouterDemandeStage($nom, $prenom, $email, $telephone, $cv,
$lettre_motivation) {
global $pdo;
$sql = "INSERT INTO demandes_stage (nom, prenom, email, telephone, cv,
lettre_motivation) VALUES
(:nom, :prenom, :email, :telephone, :cv, :lettre_motivation)";
$query = $pdo->prepare($sql);
$query->execute(array(":nom" => $nom, ":prenom" => $prenom, ":email" => $email,
":telephone" => $telephone, ":cv" => $cv, ":lettre_motivation" =>
$lettre_motivation));
}

// Ajout d'une demande d'emploi


function ajouterDemandeEmploi($nom, $prenom, $email, $telephone, $cv,
$lettre_motivation) {
global $pdo;
$sql = "INSERT INTO demandes_emploi (nom, prenom, email, telephone, cv,
lettre_motivation) VALUES
(:nom, :prenom, :email, :telephone, :cv, :lettre_motivation)";
$query = $pdo->prepare($sql);
$query->execute(array(":nom" => $nom, ":prenom" => $prenom, ":email" => $email,
":telephone" => $telephone, ":cv" => $cv, ":lettre_motivation" =>
$lettre_motivation));
}

?>

You might also like