- Redirect catre actiunea unui Controller
- Redirect cu date in Session
- Redirectionare in metoda Constructor

Exista mai multe metode de a face redirect in Laravel. Cea mai simpla metoda este cu functia redirect().
Route::get('noprofile', function(){
  return redirect()->to('user/profile');
});
Sau:
Route::get('noprofile', function(){
  return redirect('user/profile');
});
Exista de asemenea o functie back() pentru a redirectiona utilizatorul la locatia anterioara.
Route::post('user/profile', function(){
  // Validate the request...

  return back()->withInput();
});

Redirectionare un anumit Route

Fiecare Route poate avea un nume specific. Numele poate fi dat folosind metoda name()
- Exemplu:
1. In routes/web.php creaza un route pentru pagina "/test" cu numele "testing".
Creaza inca un route pentru "/redirect" care va redirection request-ul la ruta numita "testing".
Route::name('testing')->get('/test', function(){
   return 'Life is an effect, the cause is Love.';
});

Route::get('redirect',function(){
   return redirect()->route('testing');
});
2. Acceseaza in browser urmatoarea adresa pentru a testa exemplu cu nume la Route.
//localhost:8000/redirect
Dupa executarea URL-ului de mai sus, vei fi redirectional la //localhost:8000/test , loatia route-ului numit "testing".

Daca route-ul are parametri, poti sa ii adaugi intr-un array ca al doilea argument a metodei route().
// For a route with the following URI: profile/{id}

return redirect()->route('profile', ['id'=>1]);

Redirect catre actiunea unui Controller

Pentru a redirectiona catre actiunea unui controller, pune controller-ul si numele metodei la functia action().
return redirect()->action('HomeController@index');
Daca ruta la controller necesita parametri, poti sa ii ad] intr-un array ca al doilea argument al metodei action():
return redirect()->action('UserController@profile', ['id'=>1]);

Redirect cu date in Session

Daca vrei sa transmitu un mesaj la pagina unde utilizatorul este redirectionat, de exemplu dupa efectuarea cu succes a unei actiuni, poti folosi metoda with() pentru a adauga mesajul intr-o sesiune.
Route::post('user/profile', function(){
  // Update the user's profile...

  return redirect('dashboard')->with('status', 'Profile updated!');
});
Dupa ce utilizatorul este redirectiona, poti afisa mesajul din sesiune. De exemplu, folosind formatul Blade:
@if(session('status'))
 <div class="alert-success">
  {{ session('status') }}
 </div>
@endif
Dupa redirect, sesiune creata cu metoda with() este automat stearsa din "session".

Redirectionare in metoda Constructor

Pentru a face redirect() dintr-un __constructor() al unui controller, pentru a fi sigur ca redirect-ul este efectuat, fara a executa alta metoda, foloseste: redirect()->send().
Daca vrei sa faci o redirectionare in __construct() in functie de o sesiune, foloseste metoda $this->middleware() in constructor, cu codul pentru redirectionare intr-o functie callback, ca in acest format.
public function __construct(){
  $this->middleware(function($request, $next){
    //Your code with Session, for redirect

    return $next($request); //<- this is required
  });
}

- Exemplu, o bucata de cod dintr-un controller. Daca sesiune 'admin_logg' nu exista, va redirectiona la '/'; metoda test() nu va fi executata:
public function __construct(Request $request){
  //this Closure is needed because it is used session in __construct
  $this->middleware(function($request, $next){
    if(!session()->has('admin_logg')){
      return redirect('/')->send();
    }
    return $next($request);
  });

  $this->test();
}

public function test(){
  echo 'Laravel tutorial';
}

Un Test simplu in fiecare zi

HTML
CSS
JavaScript
PHP-MySQL
Engleza
Spaniola
Ce tip de <input> creaza un camp de text care trebuie sa contina doar numere?
type="text" type="number" type="date"
<input type="number" name="points" min="5" max="80" />
Ce proprietate CSS permite modificarea transparentei unui element?
font-style opacity color
#id {
  filter:alpha(opacity=40);    /* for IE */
  opacity:0.4;
}
Clic pe functia care formateaza un numar la o anumita lungime de caractere.
toPrecision() exp() toFixed()
var num = 12.84567;
alert( num.toPrecision(3) );       // 12.8
Ce functie aranjeaza aleator elementele dintr-un array?
natsort() shuffle() sort()
$lang =[10=>"PHP", 20=>"JavaScript", "site"=>"coursesweb.net");
shuffle($lang);
var_export($lang);     // array (0=>"coursesweb.net", 1=>"PHP", 2=>"JavaScript")
Indicati Superlativul cuvantului "good" (bun).
better best goodest
She is the best in our class.
- Ea este cea mai buna din clasa noastra.
Care este Superlativul cuvantului "bueno" (bun)?
el mejor más bueno muy bueno
Él es el mejor en nuestra clase.
- El este cel mai bun din clasa noastra.
Laravel tutorial - Redirectionare

Last accessed pages

  1. Prezentul simplu - Exercitii si teste incepatori (28584)
  2. Gradele de comparatie: comparative, superlative (25025)
  3. Prefixele dis-, mis-, un-. The DIS, MIS and UN prefixes (6118)
  4. Verbe frazale din limba Engleza (21677)
  5. Script PHP - curs valutar (724)

Popular pages this month

  1. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (854)
  2. Curs HTML gratuit Tutoriale HTML5 (624)
  3. Curs si Tutoriale Ajax (565)
  4. Curs PHP MySQL, Tutoriale si Scripturi PHP (565)
  5. Curs si Tutoriale JavaScript (562)