• Laravel 5

    Cours Laravel 5.3 – plus loin – le déploiement

    Une application se développe et se teste en local mais arrive un moment où il faut la mettre sur un serveur pour qu’elle devienne visible et accessible. Ce déploiement n’est pas forcément une tâche aisée selon le contexte. Dans ce chapitre nous allons faire un petit tour d’horizon de ce qu’il convient de faire sans pouvoir être exhaustif étant donné la multiplicité des configurations existantes. L’environnement Créer des environnements Pour la gestion de l’environnement Laravel  fait usage d’un package tiers : DotEnv. J’en ai déjà parlé dans ce cours mais on va un peu faire le point. Quand vous installez Laravel avec Composer vous trouvez à la racine le fichier…

  • Laravel 5

    Cours Laravel 5.3 – plus loin – les tests unitaires

    Les développeurs PHP n’ont pas été habitués à faire des tests pour leurs applications. Cela est dû à l’histoire de ce langage qui n’était au départ qu’une possibilité de scripter au milieu du code HTML mais qui s’est peu à peu développé comme un langage de plus en plus évolué. Les créateurs de frameworks ont initié une autre façon d’organiser le code de PHP, en particulier ils ont mis en avant la séparation des tâches qui a rendu la création de tests possible.‌ Laravel a été pensé pour intégrer des tests. Il comporte une infrastructure élémentaire et des helpers. Nous allons voir dans ce chapitre cet aspect de Laravel. Considérez…

  • Laravel 5

    Cours Laravel 5.3 – plus loin – ajax

    Ajax est une technologie Javascript fort répandue qui permet d’envoyer des requêtes au serveur et de recevoir des réponses sans rechargement de la page. Il est par ce moyen possible de modifier dynamiquement le DOM, donc une partie de la page. Dans ce chapitre nous allons voir comment mettre en œuvre Ajax avec Laravel en prenant un cas de l’application d’exemple. Les messages dans l’application Pour les utilisateurs autres que rédacteurs et administrateurs il y a la possibilité de laisser un message avec un formulaire : Lorsqu’un administrateur se connecte et va dans le panneau d’administration il a une page pour ces messages : Pour se connecter en tant qu’administrateur il…

  • Laravel 5

    Cours Laravel 5.3 – plus loin – les notifications

    On a vu dans ce cours comment envoyer un email avec Laravel. Mais on dispose aussi d’un système complet de notifications, par exemple par SMS, qui inclue aussi les emails ou même la base de données. Classiquement une notification est un message court pour informer un utilisateur qu’il s’est passé quelque chose qui le concerne dans l’application. Par exemple une donnée sensible a été mise à jour, on envoie un SMS par sécurité en informant l’utilisateur de ce changement et, si ce n’est pas lui qui l’a effectué, il peut alors intervenir. Evidemment pour tout ce qui n’est pas email ou base de données il faut utiliser un service externe.…

  • Laravel 5

    Cours Laravel 5.3 – plus loin – la sécurité

    Lorsqu’on développe une application on prend plein de précautions, par exemple les utilisateurs doivent s’authentifier pour éviter des actions non autorisées. Dans le code on peut vérifier si la personne est authentifiée et quel est son degré d’habilitation. Mais en dehors de l’authentification on doit gérer certaines situations comme par exemple savoir si un utilisateur authentifié a le droit de modifier une ressource particulière. Laravel nous offre un système d’autorisations bien pratique. L’authentification On a déjà vu l’authentification en détail dans un précédent chapitre. On a aussi vu que dans l’application d’exemple les utilisateurs authentifiés ont un rôle selon leur degré d’habilitation. Ce statut est conservé en session comme on…

  • Laravel 5

    Cours Laravel 5.3 – plus loin – les événements

    Il y a plusieurs façons de programmer. En général la plus simple et lisible consiste à procéder de façon séquentielle : on a une suite d’instructions (modulables par des conditions) qui sont toujours les mêmes. Le flux est facile à suivre. Mais on a aussi l’approche événementielle. On va réagir à des événements susceptibles de se produire. On peut mettre ainsi en place un ensemble constitué par une partie qui détecte des événements et une autre qui les gère. Laravel permet de gérer avec facilité les événements comme on va le voir dans ce chapitre. Le design pattern Observateur Le design pattern Observateur (observer) établit une relation de type 1:n entre…