slam4:php:phalcon:td6

TD n°6 - ACL - Formulaires...

Institut Universitaire de Technologie
Département Informatique - Campus III Ifs
Janvier-Février 2015

  1. Clonez le projet invo depuis GitHub : https://github.com/jcheron/invo.git et incorporez le à votre IDE
  2. Créez la base de données INVO et exécutez le script schemas/invo.sql sur votre serveur Mysql
  1. Lire la documentation relative au Projet INVO
  1. Afficher les quelques pages en étant non connecté
  2. Se connecter à l'application
  3. Afficher les différentes pages

-- Erreur relative aux ACLs

En étant non connecté :

  • L'accès à une URL privée (par exemple producttypes/index)affiche une page blanche (erreur 404)

⇒La page affichée devrait être errors/show401

Attention, l'erreur est double

-- Erreur PHP

En étant connecté :

  • sur affichage de l'URL : /products/index
Fatal error: Class 'Phalcon\Validation\Validator\Numericality' not found in C:\xampp\htdocs\invo\invo\app\forms\ProductsForm.php on line 53

Modifier le contrôleur errors pour qu'il affiche, en plus des vues associées (voir le dossier views/errors) les messages :

  • Erreur 404 : Message d'erreur “La page demandée {$url} n'existe pas” : Erreur 404
  • Erreur 401 : Message d'erreur : “Une authentification est nécessaire pour accéder à la ressource”
  • Erreur 500 : Message d'erreur : “Nous sommes désolés, le serveur à rencontré un problème rendant l'accès à la page momentanément impossible.” sur la page index/index

-- Nouvelle ressource

  1. Ajouter la nouvelle ressource users,permettant de gérer les utilisateurs, et définie de la façon suivante :
    'users' => array('index', 'search', 'new', 'edit', 'save', 'create', 'delete')
  2. Créer le rôle Admin : l'admin aura accès à toutes les ressources, les users a tout sauf à la ressource users.

-- Modification du model Users

  1. Modifier le table users en ajoutant le champ role (varchar) dans la base de données. Le rôle pourra être admin ou users (pour l'instant).
  2. Modifier le model users en conséquence.

-- Contrôleur

  1. Créer le contrôleur users, et les actions mentionnées dans les ACL.
    1. index
    2. search
    3. new
    4. edit
    5. save
    6. create

-- Form et vues

  1. Créer le formulaire FormUser permettant de modifier/ajouter un utilisateur
  2. Créer les vues correspondant aux actions du contrôleur

-- Sécurité

Modifier le plugin SecurityPlugin pour qu'il prenne en compte les modifications sur les droits.

Intégrer le module Phalcon\Acl\Adapter dans votre projet.

  • slam4/php/phalcon/td6.txt
  • Dernière modification : il y a 5 ans
  • de 127.0.0.1