ajout final
continuous-integration/drone/push Build is passing Details

master
Corentin.caillot 9 months ago
parent b70b10a871
commit ed1f86ba16

@ -0,0 +1,20 @@
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"type": "chrome",
"request": "launch",
"name": "Open cursus.html",
"file": "c:\\Users\\Corentin\\Desktop\\site_web\\cursus.html"
},
{
"type": "chrome",
"name": "http://127.0.0.1:3000/cursus.html",
"request": "launch",
"url": "http://127.0.0.1:3000/cursus.html"
}
]
}

@ -3,6 +3,7 @@
<head> <head>
<meta charset="UTF-8"> <meta charset="UTF-8">
<link type="text/css" rel="stylesheet" href="style.css"> <link type="text/css" rel="stylesheet" href="style.css">
<link href="https://fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap" rel="stylesheet">
<title>Corentin</title> <title>Corentin</title>
<nav class="navbar"> <nav class="navbar">
<ul class="navbar-list"> <ul class="navbar-list">
@ -16,9 +17,11 @@
<li><a href="videos.html">Vidéos</a></li> <li><a href="videos.html">Vidéos</a></li>
</ul> </ul>
</li> </li>
<li><a href="form.php">Form</a></li> <li><a href="form.php">Formulaire</a></li>
</ul> </ul>
</nav> </nav>
</head>
<body id="planning">
<h1>PLANNING</h1> <h1>PLANNING</h1>
<table> <table>
<caption>Planning d'activités</caption> <caption>Planning d'activités</caption>

@ -1,26 +1,46 @@
<?php <?php
// Check if the form was submitted // Initialisation des variables d'erreur
if ($_SERVER["REQUEST_METHOD"] == "POST") { $errors = [];
$data = [];
// Sanitize and retrieve form inputs // Vérification des champs obligatoires
$last_name = htmlspecialchars(trim($_POST['last_name'])); if ($_SERVER['REQUEST_METHOD'] === 'GET' || $_SERVER['REQUEST_METHOD'] === 'POST') {
$first_name = htmlspecialchars(trim($_POST['first_name'])); $data['name'] = !empty($_REQUEST['name']) ? trim($_REQUEST['name']) : null;
$age = isset($_POST['age']) ? (int)$_POST['age'] : null; // Optional, so we check if it's set $data['email'] = !empty($_REQUEST['email']) ? trim($_REQUEST['email']) : null;
$gender = htmlspecialchars(trim($_POST['gender'])); $data['message'] = !empty($_REQUEST['message']) ? trim($_REQUEST['message']) : null;
$data['phone'] = isset($_REQUEST['phone']) ? trim($_REQUEST['phone']) : '';
$data['reason'] = isset($_REQUEST['reason']) ? $_REQUEST['reason'] : '';
$data['schedule'] = isset($_REQUEST['schedule']) ? $_REQUEST['schedule'] : '';
$data['first_request'] = isset($_REQUEST['first_request']) ? $_REQUEST['first_request'] : '';
// Check required fields // Vérifications des champs obligatoires
if (!empty($last_name) && !empty($first_name)) { if (!$data['name']) $errors[] = "Le champ 'Nom' est obligatoire.";
// Process form data (e.g., store in a database, display, etc.) if (!$data['email']) $errors[] = "Le champ 'Adresse de courriel' est obligatoire.";
echo "<h1>Form Submitted Successfully!</h1>"; if (!$data['message']) $errors[] = "Le champ 'Message' est obligatoire.";
echo "<p>Last Name: " . $last_name . "</p>";
echo "<p>First Name: " . $first_name . "</p>"; // Validation de l'adresse email
echo "<p>Age: " . ($age !== null ? $age : 'Not provided') . "</p>"; if ($data['email'] && !filter_var($data['email'], FILTER_VALIDATE_EMAIL)) {
echo "<p>Gender: " . $gender . "</p>"; $errors[] = "Le format de l'adresse de courriel est invalide.";
}
// Affichage des erreurs ou récapitulatif
if ($errors) {
echo "<h2>Erreurs dans le formulaire :</h2><ul>";
foreach ($errors as $error) {
echo "<li>" . htmlspecialchars($error) . "</li>";
}
echo "</ul>";
echo "<a href='index.html'>Retour au formulaire</a>";
} else { } else {
// Handle missing required fields echo "<h2>Récapitulatif de votre demande</h2>";
echo "<p>Error: First name and last name are required.</p>"; echo "<p><strong>Nom :</strong> " . htmlspecialchars($data['name']) . "</p>";
echo "<p><strong>Adresse de courriel :</strong> " . htmlspecialchars($data['email']) . "</p>";
echo "<p><strong>Numéro de téléphone :</strong> " . htmlspecialchars($data['phone']) . "</p>";
echo "<p><strong>Motif de contact :</strong> " . htmlspecialchars($data['reason']) . "</p>";
echo "<p><strong>Créneau horaire :</strong> " . htmlspecialchars($data['schedule']) . "</p>";
echo "<p><strong>Première demande :</strong> " . ($data['first_request'] === 'yes' ? 'Oui' : 'Non') . "</p>";
echo "<p><strong>Message :</strong> " . nl2br(htmlspecialchars($data['message'])) . "</p>";
echo "<p>Votre demande a été prise en compte et sera étudiée.</p>";
} }
} else {
echo "<p>No form was submitted.</p>";
} }
?> ?>

@ -63,7 +63,8 @@ figcaption {
/*Navbar css*/ /*Navbar css*/
/* Style général de la navbar */ /* Style général de la navbar */
.navbar { .navbar {
background-color: #0e6ab9; background: linear-gradient(135deg, #0e6ab9, #1a82db);
/*background-color: #0e6ab9;*/
padding: 15px; padding: 15px;
display: flex; display: flex;
justify-content: center; justify-content: center;
@ -71,6 +72,7 @@ figcaption {
top: 0; top: 0;
z-index: 1000; z-index: 1000;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
} }
.navbar-list { .navbar-list {
@ -418,3 +420,15 @@ figcaption {
left: 0%; left: 0%;
} }
} }
/* additional requests */
#planning{
font-family: 'Roboto', Arial, sans-serif;
}
Loading…
Cancel
Save