34 | Bienvenue sur mon super site !
35 | Vous allez adorer ici, c'est un site génial qui va parler de... euh... Je cherche encore un peu le thème de mon site. :-D
36 |
74 |
--------------------------------------------------------------------------------
/P4/P4C3/sql/creation_base.sql:
--------------------------------------------------------------------------------
1 | CREATE DATABASE `we_love_food`;
2 | CREATE TABLE `we_love_food`.`users` ( `user_id` INT NOT NULL AUTO_INCREMENT , `full_name` VARCHAR(64) NOT NULL , `email` VARCHAR(512) NOT NULL , `password` VARCHAR(512) NOT NULL , `age` INT NOT NULL , PRIMARY KEY (`user_id`)) ENGINE = MyISAM;
3 | CREATE TABLE `we_love_food`.`recipes` ( `recipe_id` INT NOT NULL AUTO_INCREMENT , `title` VARCHAR(128) NOT NULL , `recipe` TEXT NOT NULL , `author` VARCHAR(512) NOT NULL , `is_enabled` BOOLEAN NOT NULL , PRIMARY KEY (`recipe_id`)) ENGINE = MyISAM;
4 |
5 |
6 | insert into `users` (`age`, `email`, `full_name`, `password`, `user_id`) values (34, 'mickael.andrieu@exemple.com', 'Mickaël Andrieu', 'S3cr3t', 1);
7 | insert into `users` (`age`, `email`, `full_name`, `password`, `user_id`) values (34, 'mathieu.nebra@exemple.com', 'Mathieu Nebra', 'MiamMiam', 2);
8 | insert into `users` (`age`, `email`, `full_name`, `password`, `user_id`) values (28, 'laurene.castor@exemple.com', 'Laurène Castor', 'laCasto28', 3);
9 | ;
10 |
11 |
12 | insert into `recipes` (`author`, `is_enabled`, `recipe`, `recipe_id`, `title`) values ('mickael.andrieu@exemple.com', 1, "Le cassoulet est une spécialité régionale du Languedoc, à base de haricots secs, généralement blancs, et de viande. À son origine, il était à base de fèves. Le cassoulet tient son nom de la cassole en terre cuite émaillée dite caçòla1 en occitan et fabriquée à Issel.\n", 1, 'Cassoulet');
13 | insert into `recipes` (`author`, `is_enabled`, `recipe`, `recipe_id`, `title`) values ('mickael.andrieu@exemple.com', 0, "Le couscous est d'une part une semoule de blé dur préparée à l'huile d'olive (un des aliments de base traditionnel de la cuisine des pays du Maghreb) et d'autre part, une spécialité culinaire issue de la cuisine berbère, à base de couscous, de légumes, d'épices, d'huile d'olive et de viande (rouge ou de volaille) ou de poisson.", 2, 'Couscous');
14 | insert into `recipes` (`author`, `is_enabled`, `recipe`, `recipe_id`, `title`) values ('laurene.castor@exemple.com', 0, "La salade César est une recette de cuisine de salade composée de la cuisine américaine, traditionnellement préparée en salle à côté de la table, à base de laitue romaine, œuf dur, croûtons, parmesan et de « sauce César » à base de parmesan râpé, huile d'olive, pâte d'anchois, ail, vinaigre de vin, moutarde, jaune d'œuf et sauce Worcestershire.", 4, 'Salade Romaine');
15 | insert into `recipes` (`author`, `is_enabled`, `recipe`, `recipe_id`, `title`) values ('mathieu.nebra@exemple.com', 1, "L'escalope à la milanaise, ou escalope milanaise est une escalope panée, de viande de veau, traditionnellement prise dans le faux-filet. Historiquement, on la cuit avec du beurre. Elle est généralement servie avec salade ou frites, accompagnée de sauce mayonnaise. On peut y ajouter un filet de jus de citron.\n\nEn Italie, ce mets ne se sert pas avec des pâtes.", 3, 'Escalope milanaise');
--------------------------------------------------------------------------------
/P4/P4C3/submit_contact.php:
--------------------------------------------------------------------------------
1 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 | Site de Recettes - Contact reçu
24 |
28 |
29 |
30 |
52 |
53 |
54 |
55 |
--------------------------------------------------------------------------------
/P4/P4C4/recipes/update.php:
--------------------------------------------------------------------------------
1 | prepare('SELECT * FROM recipes WHERE recipe_id = :id');
15 | $retrieveRecipeStatement->execute([
16 | 'id' => $getData['id'],
17 | ]);
18 |
19 | $recipe = $retrieveRecipeStatement->fetch(PDO::FETCH_ASSOC);
20 |
21 | // si la recette n'est pas trouvée, renvoyer un message d'erreur
22 | ?>
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 | Site de Recettes - Edition de recette
31 |
35 |
36 |
37 |
38 |
39 |
40 |
Mettre à jour
41 |
59 |
60 |
61 |
62 |
63 |
64 |
--------------------------------------------------------------------------------
/P4/P4C4/sql/creation_base.sql:
--------------------------------------------------------------------------------
1 | CREATE DATABASE `we_love_food`;
2 | CREATE TABLE `we_love_food`.`users` ( `user_id` INT NOT NULL AUTO_INCREMENT , `full_name` VARCHAR(64) NOT NULL , `email` VARCHAR(512) NOT NULL , `password` VARCHAR(512) NOT NULL , `age` INT NOT NULL , PRIMARY KEY (`user_id`)) ENGINE = MyISAM;
3 | CREATE TABLE `we_love_food`.`recipes` ( `recipe_id` INT NOT NULL AUTO_INCREMENT , `title` VARCHAR(128) NOT NULL , `recipe` TEXT NOT NULL , `author` VARCHAR(512) NOT NULL , `is_enabled` BOOLEAN NOT NULL , PRIMARY KEY (`recipe_id`)) ENGINE = MyISAM;
4 |
5 |
6 | insert into `users` (`age`, `email`, `full_name`, `password`, `user_id`) values (34, 'mickael.andrieu@exemple.com', 'Mickaël Andrieu', 'S3cr3t', 1);
7 | insert into `users` (`age`, `email`, `full_name`, `password`, `user_id`) values (34, 'mathieu.nebra@exemple.com', 'Mathieu Nebra', 'MiamMiam', 2);
8 | insert into `users` (`age`, `email`, `full_name`, `password`, `user_id`) values (28, 'laurene.castor@exemple.com', 'Laurène Castor', 'laCasto28', 3);
9 | ;
10 |
11 |
12 | insert into `recipes` (`author`, `is_enabled`, `recipe`, `recipe_id`, `title`) values ('mickael.andrieu@exemple.com', 1, "Le cassoulet est une spécialité régionale du Languedoc, à base de haricots secs, généralement blancs, et de viande. À son origine, il était à base de fèves. Le cassoulet tient son nom de la cassole en terre cuite émaillée dite caçòla1 en occitan et fabriquée à Issel.\n", 1, 'Cassoulet');
13 | insert into `recipes` (`author`, `is_enabled`, `recipe`, `recipe_id`, `title`) values ('mickael.andrieu@exemple.com', 0, "Le couscous est d'une part une semoule de blé dur préparée à l'huile d'olive (un des aliments de base traditionnel de la cuisine des pays du Maghreb) et d'autre part, une spécialité culinaire issue de la cuisine berbère, à base de couscous, de légumes, d'épices, d'huile d'olive et de viande (rouge ou de volaille) ou de poisson.", 2, 'Couscous');
14 | insert into `recipes` (`author`, `is_enabled`, `recipe`, `recipe_id`, `title`) values ('laurene.castor@exemple.com', 0, "La salade César est une recette de cuisine de salade composée de la cuisine américaine, traditionnellement préparée en salle à côté de la table, à base de laitue romaine, œuf dur, croûtons, parmesan et de « sauce César » à base de parmesan râpé, huile d'olive, pâte d'anchois, ail, vinaigre de vin, moutarde, jaune d'œuf et sauce Worcestershire.", 4, 'Salade Romaine');
15 | insert into `recipes` (`author`, `is_enabled`, `recipe`, `recipe_id`, `title`) values ('mathieu.nebra@exemple.com', 1, "L'escalope à la milanaise, ou escalope milanaise est une escalope panée, de viande de veau, traditionnellement prise dans le faux-filet. Historiquement, on la cuit avec du beurre. Elle est généralement servie avec salade ou frites, accompagnée de sauce mayonnaise. On peut y ajouter un filet de jus de citron.\n\nEn Italie, ce mets ne se sert pas avec des pâtes.", 3, 'Escalope milanaise');
--------------------------------------------------------------------------------
/P4/P4C4/submit_contact.php:
--------------------------------------------------------------------------------
1 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 | Site de Recettes - Page d'accueil
24 |
28 |
29 |
30 |
59 |
60 |
61 |
62 |
--------------------------------------------------------------------------------
/P4/P4C5/sql/add_comments.sql:
--------------------------------------------------------------------------------
1 | CREATE TABLE `we_love_food`.`comments` ( `comment_id` INT NOT NULL AUTO_INCREMENT , `user_id` INT NOT NULL, `recipe_id` INT NOT NULL, `comment` TEXT NOT NULL , PRIMARY KEY (`comment_id`), FOREIGN KEY (`user_id`) REFERENCES users(`user_id`), FOREIGN KEY (`recipe_id`) REFERENCES recipes(`recipe_id`)) ENGINE = MyISAM;
2 |
--------------------------------------------------------------------------------
/P4/P4C5/sql/creation_base.sql:
--------------------------------------------------------------------------------
1 | CREATE DATABASE `we_love_food`;
2 | CREATE TABLE `we_love_food`.`users` ( `user_id` INT NOT NULL AUTO_INCREMENT , `full_name` VARCHAR(64) NOT NULL , `email` VARCHAR(512) NOT NULL , `password` VARCHAR(512) NOT NULL , `age` INT NOT NULL , PRIMARY KEY (`user_id`)) ENGINE = MyISAM;
3 | CREATE TABLE `we_love_food`.`recipes` ( `recipe_id` INT NOT NULL AUTO_INCREMENT , `title` VARCHAR(128) NOT NULL , `recipe` TEXT NOT NULL , `author` VARCHAR(512) NOT NULL , `is_enabled` BOOLEAN NOT NULL , PRIMARY KEY (`recipe_id`)) ENGINE = MyISAM;
4 |
5 |
6 | insert into `users` (`age`, `email`, `full_name`, `password`, `user_id`) values (34, 'mickael.andrieu@exemple.com', 'Mickaël Andrieu', 'S3cr3t', 1);
7 | insert into `users` (`age`, `email`, `full_name`, `password`, `user_id`) values (34, 'mathieu.nebra@exemple.com', 'Mathieu Nebra', 'MiamMiam', 2);
8 | insert into `users` (`age`, `email`, `full_name`, `password`, `user_id`) values (28, 'laurene.castor@exemple.com', 'Laurène Castor', 'laCasto28', 3);
9 | ;
10 |
11 |
12 | insert into `recipes` (`author`, `is_enabled`, `recipe`, `recipe_id`, `title`) values ('mickael.andrieu@exemple.com', 1, "Le cassoulet est une spécialité régionale du Languedoc, à base de haricots secs, généralement blancs, et de viande. À son origine, il était à base de fèves. Le cassoulet tient son nom de la cassole en terre cuite émaillée dite caçòla1 en occitan et fabriquée à Issel.\n", 1, 'Cassoulet');
13 | insert into `recipes` (`author`, `is_enabled`, `recipe`, `recipe_id`, `title`) values ('mickael.andrieu@exemple.com', 0, "Le couscous est d'une part une semoule de blé dur préparée à l'huile d'olive (un des aliments de base traditionnel de la cuisine des pays du Maghreb) et d'autre part, une spécialité culinaire issue de la cuisine berbère, à base de couscous, de légumes, d'épices, d'huile d'olive et de viande (rouge ou de volaille) ou de poisson.", 2, 'Couscous');
14 | insert into `recipes` (`author`, `is_enabled`, `recipe`, `recipe_id`, `title`) values ('laurene.castor@exemple.com', 0, "La salade César est une recette de cuisine de salade composée de la cuisine américaine, traditionnellement préparée en salle à côté de la table, à base de laitue romaine, œuf dur, croûtons, parmesan et de « sauce César » à base de parmesan râpé, huile d'olive, pâte d'anchois, ail, vinaigre de vin, moutarde, jaune d'œuf et sauce Worcestershire.", 4, 'Salade Romaine');
15 | insert into `recipes` (`author`, `is_enabled`, `recipe`, `recipe_id`, `title`) values ('mathieu.nebra@exemple.com', 1, "L'escalope à la milanaise, ou escalope milanaise est une escalope panée, de viande de veau, traditionnellement prise dans le faux-filet. Historiquement, on la cuit avec du beurre. Elle est généralement servie avec salade ou frites, accompagnée de sauce mayonnaise. On peut y ajouter un filet de jus de citron.\n\nEn Italie, ce mets ne se sert pas avec des pâtes.", 3, 'Escalope milanaise');
--------------------------------------------------------------------------------
/P4/P4C5/submit_contact.php:
--------------------------------------------------------------------------------
1 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 | Site de Recettes - Page d'accueil
24 |
28 |
29 |
30 |
59 |
60 |
61 |
62 |
--------------------------------------------------------------------------------
/P4/P4C6/sql/add_comments.sql:
--------------------------------------------------------------------------------
1 | CREATE TABLE `we_love_food`.`comments` ( `comment_id` INT NOT NULL AUTO_INCREMENT , `user_id` INT NOT NULL, `recipe_id` INT NOT NULL, `comment` TEXT NOT NULL , PRIMARY KEY (`comment_id`), FOREIGN KEY (`user_id`) REFERENCES users(`user_id`), FOREIGN KEY (`recipe_id`) REFERENCES recipes(`recipe_id`)) ENGINE = MyISAM;
2 |
--------------------------------------------------------------------------------
/P4/P4C6/sql/creation_base.sql:
--------------------------------------------------------------------------------
1 | CREATE DATABASE `we_love_food`;
2 | CREATE TABLE `we_love_food`.`users` ( `user_id` INT NOT NULL AUTO_INCREMENT , `full_name` VARCHAR(64) NOT NULL , `email` VARCHAR(512) NOT NULL , `password` VARCHAR(512) NOT NULL , `age` INT NOT NULL , PRIMARY KEY (`user_id`)) ENGINE = MyISAM;
3 | CREATE TABLE `we_love_food`.`recipes` ( `recipe_id` INT NOT NULL AUTO_INCREMENT , `title` VARCHAR(128) NOT NULL , `recipe` TEXT NOT NULL , `author` VARCHAR(512) NOT NULL , `is_enabled` BOOLEAN NOT NULL , PRIMARY KEY (`recipe_id`)) ENGINE = MyISAM;
4 |
5 |
6 | insert into `users` (`age`, `email`, `full_name`, `password`, `user_id`) values (34, 'mickael.andrieu@exemple.com', 'Mickaël Andrieu', 'S3cr3t', 1);
7 | insert into `users` (`age`, `email`, `full_name`, `password`, `user_id`) values (34, 'mathieu.nebra@exemple.com', 'Mathieu Nebra', 'MiamMiam', 2);
8 | insert into `users` (`age`, `email`, `full_name`, `password`, `user_id`) values (28, 'laurene.castor@exemple.com', 'Laurène Castor', 'laCasto28', 3);
9 | ;
10 |
11 |
12 | insert into `recipes` (`author`, `is_enabled`, `recipe`, `recipe_id`, `title`) values ('mickael.andrieu@exemple.com', 1, "Le cassoulet est une spécialité régionale du Languedoc, à base de haricots secs, généralement blancs, et de viande. À son origine, il était à base de fèves. Le cassoulet tient son nom de la cassole en terre cuite émaillée dite caçòla1 en occitan et fabriquée à Issel.\n", 1, 'Cassoulet');
13 | insert into `recipes` (`author`, `is_enabled`, `recipe`, `recipe_id`, `title`) values ('mickael.andrieu@exemple.com', 0, "Le couscous est d'une part une semoule de blé dur préparée à l'huile d'olive (un des aliments de base traditionnel de la cuisine des pays du Maghreb) et d'autre part, une spécialité culinaire issue de la cuisine berbère, à base de couscous, de légumes, d'épices, d'huile d'olive et de viande (rouge ou de volaille) ou de poisson.", 2, 'Couscous');
14 | insert into `recipes` (`author`, `is_enabled`, `recipe`, `recipe_id`, `title`) values ('laurene.castor@exemple.com', 0, "La salade César est une recette de cuisine de salade composée de la cuisine américaine, traditionnellement préparée en salle à côté de la table, à base de laitue romaine, œuf dur, croûtons, parmesan et de « sauce César » à base de parmesan râpé, huile d'olive, pâte d'anchois, ail, vinaigre de vin, moutarde, jaune d'œuf et sauce Worcestershire.", 4, 'Salade Romaine');
15 | insert into `recipes` (`author`, `is_enabled`, `recipe`, `recipe_id`, `title`) values ('mathieu.nebra@exemple.com', 1, "L'escalope à la milanaise, ou escalope milanaise est une escalope panée, de viande de veau, traditionnellement prise dans le faux-filet. Historiquement, on la cuit avec du beurre. Elle est généralement servie avec salade ou frites, accompagnée de sauce mayonnaise. On peut y ajouter un filet de jus de citron.\n\nEn Italie, ce mets ne se sert pas avec des pâtes.", 3, 'Escalope milanaise');
--------------------------------------------------------------------------------
/P4/P4C6/sql/improve_comments.sql:
--------------------------------------------------------------------------------
1 | ALTER TABLE comments ADD created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP;
2 | ALTER TABLE comments ADD review INT NOT NULL DEFAULT 3;
--------------------------------------------------------------------------------
/P4/P4C6/submit_contact.php:
--------------------------------------------------------------------------------
1 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 | Site de Recettes - Page d'accueil
24 |
28 |
29 |
30 |
31 |
32 |
33 |
Message bien reçu !
34 |
35 |
36 |
37 |
38 |
Rappel de vos informations
39 |
Email :
40 |
Message :
41 |
42 |
43 |
44 |
45 |
46 |
--------------------------------------------------------------------------------
/P4/P4C6/variables.php:
--------------------------------------------------------------------------------
1 | prepare('SELECT * FROM users');
5 | $usersStatement->execute();
6 | $users = $usersStatement->fetchAll();
7 |
8 | $recipesStatement = $mysqlClient->prepare('SELECT * FROM recipes WHERE is_enabled is TRUE');
9 | $recipesStatement->execute();
10 | $recipes = $recipesStatement->fetchAll();
11 |
12 | if(isset($_GET['limit']) && is_numeric($_GET['limit'])) {
13 | $limit = (int) $_GET['limit'];
14 | } else {
15 | $limit = 100;
16 | }
17 |
18 | // Si le cookie est présent
19 | if (isset($_COOKIE['LOGGED_USER']) || isset($_SESSION['LOGGED_USER'])) {
20 | $loggedUser = [
21 | 'email' => $_COOKIE['LOGGED_USER'] ?? $_SESSION['LOGGED_USER'],
22 | ];
23 | }
24 |
25 | $rootPath = $_SERVER['DOCUMENT_ROOT'];
26 | $rootUrl = (!empty($_SERVER['HTTPS']) ? 'https' : 'http') . '://' . $_SERVER['HTTP_HOST'] . '/';
--------------------------------------------------------------------------------
/P4/P4C6/viewed_pages.php:
--------------------------------------------------------------------------------
1 | Cette page a été vue ' . $pages_vues . ' fois !');
13 | ?>
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Concevez un site web avec PHP & MySQL
2 |
3 | Ce dépôt git contient tous les exemples de cours et les projets/exercices
4 | du cours "Concevez un site web avec PHP & MySQL" créé par Mathieu Nebra et enrichi par Mickaël Andrieu.
5 |
6 | Le projet est contribuable mais sa mise à jour **n'implique pas** de mise à jour du cours en ligne, il faudra vous rapprocher des équipes pédagogiques d'OpenClassrooms pour cela.
7 |
8 | Happy learning !
--------------------------------------------------------------------------------