Curs Php-mysql

- Transmitere date catre fisiere View
- Folosire Date predefinite cu toate view-urile

Intelegere Views

Views (sau Template-uri ) in Laravel sunt fisiere '.php' stocate in directorul "resources/views", si sunt in general folosite pentru a crea continutul paginii afisata in browser. Aceste fisiere pot contine cod HTML, CSS, JavaScript si PHP.
In Laravel, exista doua tipuri de view pe care le puteti folosi: Blade (cu extensia ".blade.php" in numele fisierului) rendat cu sistemul de template Blade; sau simplu ".php" (care nu va prelucra codul de tip Blade Template).

- Exemplu simplu de utilizare fisier view Blade:
1. Copiati urmatorul cod si salvati-l intr-un fisier resources/views/light.blade.php.
<html>
<body>
<h1>View is an effect, Vision is the source</h1>
</body>
</html>
2. Adaugati urmatoarea linie in fisierul routes/web.php pentru a defini route-ul pentru view-ul de mai sus.
Route::get('/light', function(){
 return view('light');
});
3. Accesati in browser urmatorul URL pentru a vedea rezultatul view-ului.
//localhost:8000/light
- Rezultatul va apare precum se vede in imaginea de mai jos.
laravel Simple View
Daca fisierul view este intr-un sub-director din directorul "resources/views", de exemplu "resources/views/pages/name.blade.php", adaugati numele sub-directorului inainte de numele fisierului:
return view('pages.name');
Pentru a verifica daca un view exista, puteti folosi metoda exists() a clasei View din Facades. Metoda va returna true daca view-ul exista:
use Illuminate\Support\Facades\View;

if(View::exists('pages.test')){
 //
}

Transmitere date catre fisiere View

Puteti utiliza variabile in fisierele template din resources/views/, folosind aceasta sintaxa: {{$variable_name}}, apoi adaugati un array cu perechi nume=>valoare ca al doilea argument in metoda view().
"Nume" in array trebuie sa corespunda cu numele variabilei in template.

- Exemplu simplu de Blade view:
1. Copiati si salvati urmatorul cod intr-un fisier resources/views/greeting.blade.php.
<html>
<head>
<title>{{$title}}</title>
</head>
<body>
<h1>Hello {{$name}}</h1>
</body>
</html>
2. Adaugati urmatoarea linie in fisierul routes/web.php pentru a crea route-ul pentru view-ul de mai sus.
Route::get('/greeting', function(){
 $vars =['title'=>'Greetings', 'name'=>'Me'];
 return view('greeting', $vars);
});
3. Accesati in browser urmatorul URL pentru a vedea rezultatul view-ului.
//localhost:8000/greeting
- Rezultatul va apare precum se vede in imaginea urmatoare.
laravel Greetings View

Folosire Date predefinite cu toate view-urile

Daca vreti sa transitei aceleasi date la toate view-urile, folositi metoda view()->share().
Metoda share() preia doua argumente: key si valoare.
De obicei metoda share() poate fi apelata din metoda boot() a unei clase ServiceProvider.
Se poate folosi orice clasa ServiceProvider, cum ar fi: AppServiceProvider.

- Exemplu:
1. Creaza doua fisiere view: test.blade.php si test2.blade.php cu acelasi cod, in directorul "resources/views/".
- Copiaza urmatorul cod in amandoua fisierele.
<html>
<body>
<h1>Share {{$state}}</h1>
<h2>Receive {{$gift}}</h2>
</body>
</html>
2. Modificati codul metodei boot() din fisierul app/Providers/AppServiceProvider.php, cum este aratat mai jos (Aici, am folosit metoda share() si datele pe care le-am adaugat vor putea fi utilizate in toate view-urile).
<?php
namespace App\Providers;

use Illuminate\Support\ServiceProvider;

class AppServiceProvider extends ServiceProvider {
 //Bootstrap any application services.
 //@return void
 public function boot(){
 view()->share('state', 'Peace');
 view()->share('gift', 'Love');
 }

 //Register any application services.
 //@return void
 public function register(){
 //
 }
}
3. Adaugati urmatoarele linii in fisierul routes/web.php.
Route::get('/test', function(){
 return view('test');
});
Route::get('/test2', function(){
 return view('test2');
});
4. Vizitati urmatoarele adrese URL:
//localhost:8000/test

//localhost:8000/test2
- Rezultatul pentru ambele adrese va aparea precum se vede in imaginea urmatoare.
laravel Greetings View

- Documentatie: Laravel - Views

Un Test simplu in fiecare zi

HTML
CSS
JavaScript
PHP-MySQL
Engleza
Spaniola
Care tag HTML5 defineste un text marcat, evidentiat?
<mark> <embed> <span>
<p>Cursuri graruite: <mark>MarPlo.net</mark> , jocuri, anime.</p>
Ce pseudo-clasa CSS defineste un stil la element cand mouse-ul e deasupra lui?
:focus :hover :active
a:hover {
  font-weight: bold;
  color: #00da01;
}
Clic pe functia ce returneaza un sir cu un numar rotunjit la x decimale.
toPrecision(x) toFixed(x) floor(x)
var num = 12.34567;
num = num.toFixed(2);
alert(num);       // 12.35
Indicati functia PHP care adauga continutul unui fisier intr-un array.
[) file() readfile()
$arr = file("a_file.txt", FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
var_export($arr);
Clic pe raspunsul potrivit la intrebarea: "What time is it?"
On the 7th of July 1996 It is a quarter to 5. Nice weather.
What time is it? It is a quarter to 5.
- Cat este ora? E 5 fara un sfert.
Indicati raspunsul potrivit la intrebarea: "¿Qué hora es?"
Hace buen tiempo. En el 7 de julio de 1996 Son las tres menos cuarto.
¿Qué hora es? Son las tres menos cuarto.
- Cat este ora? E 3 fara un sfert.
Laravel tutorial - Views

Last accessed pages

  1. Download carti electronice si programe pentru Limba Engleza (43198)
  2. Titluri, Paragrafe, Un nou rand, Linie orizontala (32360)
  3. OOP - Clase si Obiecte - Creare Clasa (6765)
  4. Verbe ca si Gustar (1846)
  5. Gramatica limbii spaniole. Indrumator si prezentare generala (66723)

Popular pages this month

  1. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (767)
  2. Exercitii engleza - English Tests and exercises - Grammar (596)
  3. Prezentul simplu si continuu - Present Tense Simple and Continuous (587)
  4. Gramatica limbii engleze - Prezentare Generala (580)
  5. Prezentul simplu - Exercitii si teste incepatori (504)