Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
web:blade [2018/11/13 10:47]
irhamdj Rapide explication des changements qu'apporte le Blade.
web:blade [2018/11/20 08:19] (Version actuelle)
dmillot [Formulaires]
Ligne 1: Ligne 1:
 +====== BLADE ======
 **Rappel :** Bien penser à mettre **.blade** dans l'​extension du fichier. (ex:** //​index.blade.php//​**) **Rappel :** Bien penser à mettre **.blade** dans l'​extension du fichier. (ex:** //​index.blade.php//​**)
  
Ligne 13: Ligne 14:
 </​code>​ </​code>​
  
-Le mot-clé "​@yield"​ va ici appeler la section** content**.+Le mot-clé ​**"​@yield"​** va ici appeler la section** content**.
 <​code>​ <​code>​
 @extends('​template'​) @extends('​template'​)
Ligne 23: Ligne 24:
 Cela permet d'​éviter de réécrire le header et le footer sur chaque page du site. Cela permet d'​éviter de réécrire le header et le footer sur chaque page du site.
 ---- ----
-Les structures de bases de programmations ont également changées : +===== Conditions ===== 
-  * **"​if"​** devient **"@if"**, le **"​else"​** devient **"@else"** et se termine par **"@endif"​** ​ +  * La condition ​**IF** 
-  * **"​foreach"​** devient **"@foreach"​** et se termine par **"@endforeach"​** +<​code>​ 
-  * **"​while"​** devient **"@while"​** et se termine par **"@endwhile"​** +@if (condition) 
-  * etc... +    // faire quelque chose 
 +@else 
 +    // faire autre chose 
 +@endif 
 +</​code>​ 
 +  * La condition ​**ELSEIF** 
 +<​code>​ 
 +@if (condition) 
 +    // faire quelque chose 
 +@elseif (condition 2) 
 +    // faire autre chose 
 +@elseif (condition 3) 
 +    // faire autre chose 
 +@else 
 +    // faire autre chose si toutes les conditions sont fausses 
 +@endif 
 +</​code>​
 ---- ----
 +===== Boucles =====
 +Voici les différentes boucles proposées par blade :
 +  * La boucle **FOREACH**
 +<​code>​
 +@foreach ($collection as $variable)
 +    // faire quelque chose
 +@endforeach
 +</​code>​
 +  * La boucle **FORELSE**
 +<​code>​
 +@forelse ($collection as $variable)
 +    // faire quelque chose
 +@empty
 +    // faire autre chose si la collection est vide
 +@endforelse
 +</​code>​
 +  * La boucle **WHILE**
 +<​code>​
 +@while (condition)
 +    // faire quelque chose
 +@endwhile
 +</​code>​
  
 +----
 +===== Formulaires =====
 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). ​ 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"​** 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.+Pour cela il existe **"​@csrf"​**(Cross-site request forgery) ​qui est un **//jeton d'​authentification//​** (ou token en Anglais) ​proposé par Blade. Si il n'est pas présent dans le formulaire, le code de ce dernier ne s’exécutera pas. 
 + 
 +Il existe différentes façons de générer un formulaire. 
 +---- 
 +=== Première méthode ===
 <​code>​ <​code>​
 <form action="​{{action('​MagazineController@destroy',​ $donnees['​id'​])}}"​ method="​post">​ <form action="​{{action('​MagazineController@destroy',​ $donnees['​id'​])}}"​ method="​post">​
Ligne 41: Ligne 85:
 </​form>​ </​form>​
 </​code>​ </​code>​
 +----
 +=== Deuxième méthode ===
 +Cette méthode nécessite l'​installation du package [[web:​commandes_du_terminal#​packages|laravelcollective]].
 +<​code>​
 +{!! Form::​model(['​action'​ => '​MagazineController@destroy',​ $donnees->​id]) !!}
 +{!! Form::​submit('​Supprimer'​) !!}
 +{!! Form::​close() !!}
 +</​code>​
 +Le jeton **CSRF** est généré automatiquement dans cette méthode.
 +----
 +===== Commentaires =====
 +Blade propose sa propre définition des commentaires dans une vue.
 +<​code>​
 +{{-- Commentaire --}}
 +</​code>​
 +Contrairement aux commentaires HTML, ce commentaire n’apparaîtra pas dans le code source de votre page.
 +----