Ceci est une ancienne révision du document !
====== BLADE ====== **Rappel :** Bien penser à mettre **.blade** dans l'extension du fichier. (ex:** //index.blade.php//**) Les balises PHP traditionnelles sont changées dans Blade. <code><?php ?> se transforme en : {{ }}</code> ---- Avec Blade on a la possibilité liées deux vues entres elles. Comme par exemple, le header/footer avec le body. <code> <body> @yield('content') </body> </code> Le mot-clé **"@yield"** va ici appeler la section** content**. <code> @extends('template') @section('content') //Code @endsection </code> Le mot-clé **"@extends"** indique que la page actuelle est une extension appelée dans la vue contenant le **@yield**. (La vue comprise dans les parenthèses du **"@yield"**). Cela permet d'éviter de réécrire le header et le footer sur chaque page du site. ---- ===== Syntaxe ===== Les structures de bases de programmations ont également changées : * **"if"** devient **"@if"**, le **"else"** devient **"@else"** et se termine par **"@endif"** * **"foreach"** devient **"@foreach"** et se termine par **"@endforeach"** * **"while"** devient **"@while"** et se termine par **"@endwhile"** * etc... ---- ===== Formulaire ===== Lors de l'utilisation d'un formulaire, il est important de sécuriser l'envoi des données. Afin d'éviter que une personne ajoute des données a notre base de données factices (ou suppression, ou modification). Pour cela il existe **"@csrf"**(Cross-site request forgery) qui est un **//jeton d'authentification//** (ou token en Anglais). Si il n'est pas présent dans le formulaire, le code de ce dernier ne s’exécutera pas. <code> <form action="{{action('MagazineController@destroy', $donnees['id'])}}" method="post"> @csrf <input name="_method" type="hidden" value="DELETE"> <button class="btn btn-danger">Supprimer</button> </form> </code>