tp5 mvc + codeigniter v3
This commit is contained in:
@@ -0,0 +1,69 @@
|
||||
|
||||
# TP5 : prise en main de codeigniter
|
||||
|
||||
## Installation
|
||||
Téléchargez les sources de [codeigniter v3](https://github.com/pocketarc/codeigniter) (il s'agit d'un fork qui évite certains
|
||||
porblèmes de compatibilité avec des versions récentes de php), et placez les dans votre
|
||||
`public_html`.
|
||||
|
||||
1. Importez dans votre base de données la table [todo.sql](src/sql/todo.sql)
|
||||
2. Copiez le repertoire [assets](src/assets) à la racine de votre application.
|
||||
3. Copiez les [contrôleurs](src/ci), [modèles](src/ci) et [vues](src/ci) dans votre application.
|
||||
4. Configurez les paramètres nécessaires à codeigniter :
|
||||
- `config/config.php`
|
||||
- `config/database.php`
|
||||
|
||||
```php
|
||||
$config['base_url']='/~login/chemin/vers/codeigniter';
|
||||
```
|
||||
Vous devriez obtenir une application `todolist` fonctionnelle à l'url :
|
||||
```
|
||||
https://dwarves.iut-fbleau.fr/~login/chemin/vers/codeigniter/index.php/todo
|
||||
```
|
||||
|
||||

|
||||
|
||||
## Suppression des tâches
|
||||
Modifiez le code pour la suppression des tâches.
|
||||
|
||||
## Edition des tâches
|
||||
Modifiez le code (contrôleur et modèle) pour l'édition des tâches.
|
||||
|
||||
## Tri de la todolist
|
||||
Ajoutez la possibilité de trier la todolist par ordre (croissant/décroissant) alphabètique
|
||||
|
||||
## Création de compte
|
||||
|
||||
1. Ajoutez dans votre de base de données une table `user`, qui permettra de stocker des utilisateurs.
|
||||
attributs : nom, prenom, email (clé primaire), password.
|
||||
2. Complétez le contrôleur de création de compte. On rappelle que la base de données doit contenir un hash du mot de passe (cf tp4).
|
||||
```php
|
||||
<?php
|
||||
/**
|
||||
* We just want to hash our password using the current DEFAULT algorithm.
|
||||
* This is presently BCRYPT, and will produce a 60 character result.
|
||||
*
|
||||
* Beware that DEFAULT may change over time, so you would want to prepare
|
||||
* By allowing your storage to expand past 60 characters (255 would be good)
|
||||
*/
|
||||
echo password_hash("rasmuslerdorf", PASSWORD_DEFAULT);
|
||||
?>
|
||||
```
|
||||
```php
|
||||
<?php
|
||||
// Voir l'exemple fourni sur la page de la fonction password_hash()
|
||||
// pour savoir d'où cela provient.
|
||||
$hash = '$2y$07$BCryptRequires22Chrcte/VlQH0piJtjXl.0t1XkA8pw9dMXTpOq';
|
||||
|
||||
if (password_verify('rasmuslerdorf', $hash)) {
|
||||
echo 'Le mot de passe est valide !';
|
||||
} else {
|
||||
echo 'Le mot de passe est invalide.';
|
||||
}
|
||||
?>
|
||||
```
|
||||
|
||||
3. Ajoutez un formulaire d'authentification.
|
||||
4. Utilisez une session pour proteger l'accès à la todolist par authentification.
|
||||
5. Ajouter à la table todo un lien vers la table user, et modifez l'ensemble de l'application pour que
|
||||
chaque utilisateur possède sa propre todolist.
|
||||
Reference in New Issue
Block a user