Laravel Course

- Retrieving Cookie from Request
- Redirect with Cookie
- Deleting Cookie

Cookie generated by the Laravel framework are encrypted and signed and it can`t be modified or read by the client.

Creating Cookie

You can create a cookie by attaching the global cookie() helper to a response():
return response('Hello Me.')->cookie('name', 'value', $minutes);
If you want to create the cookie when a view is returned, use the following syntax:
return response()->view('file_name')->cookie('name', 'value', $minutes);
The cookie() method will take 3 arguments. First argument is the name of the cookie, second argument is the value of the cookie, and the third argument is the duration in minutes after which the cookie will get deleted automatically.

Retrieving Cookie from Request

To retrieve a cookie value from the request, use the cookie() method on a Illuminate\Http\Request instance:
$value = $request->cookie('name');

Redirect with Cookie

To make a redirect with cookie, apply the withCookie() method:
return redirect('/')->withCookie(cookie('cookie_name', 'value', $minutes));

Deleting Cookie

To delete a cookie, just create that cookie with a negative value in the third argument, $minutes:
return response()->view('file_name')->cookie('name', '', -1);

Practical example

1. We create a controller called CookieController.
Copy the following code and save it in "app/Http/Controllers/CookieController.php".
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;

class CookieController extends Controller {
  public function getCookie(Request $request){
    $val = $request->cookie('name');
    if($val) return 'Cookie "name" = '. $val;
    else return 'No cookie "name"';
  }

  public function setCookie(Request $request){
    return response('Hello Me.')->cookie('name', 'cookie-value', 60);
  }

  public function deleteCookie(Request $request){
    return response('Cookie deleted')->cookie('name', '', -1);
  }
}
2. Now, set up the routes to test the CookieController.
Add the following code in the routes/web.php file:
Route::get('cookie/get','CookieController@getCookie');
Route::get('cookie/set','CookieController@setCookie');
Route::get('cookie/delete','CookieController@deleteCookie');
3. Visit the following URL to create the cookie:
//localhost:8000/cookie/set
- Output:
Hello Me.
4. Visit the following URL to get the cookie`s value:
//localhost:8000/cookie/get
- Output:
Cookie "name" = cookie-value
5. Visit the following URL to delete the cookie:
//localhost:8000/cookie/delete
- Output:
Cookie deleted
6. Now, if you visit again the URL: //localhost:8000/:/get , it will display:
No cookie "name"

Daily Test with Code Example

HTML
CSS
JavaScript
PHP-MySQL
Which tag is used to add lists into <ul> and <ol> elements?
<dt> <dd> <li>
<ul>
 <li>http://coursesweb.net/html/</li>
 <li>http://coursesweb.net/css/</li>
</ul>
Which value of the "display" property creates a block box for the content and ads a bullet marker?
block list-item inline-block
.some_class {
  display: list-item;
}
Which instruction converts a JavaScript object into a JSON string.
JSON.parse() JSON.stringify eval()
var obj = {
 "courses": ["php", "javascript", "ajax"]
};
var jsonstr = JSON.stringify(obj);
alert(jsonstr);    // {"courses":["php","javascript","ajax"]}
Indicate the PHP class used to work with HTML and XML content in PHP.
stdClass PDO DOMDocument
$strhtml = '<body><div id="dv1">CoursesWeb.net</div></body>';
$dochtml = new DOMDocument();
$dochtml->loadHTML($strhtml);
$elm = $dochtml->getElementById("dv1");
echo $elm->nodeValue;    // CoursesWeb.net
Cookies

Last accessed pages

  1. Get Mime Type of file or string content in PHP (6228)
  2. Get and Modify content of an Iframe (32346)
  3. Making DIV Contents Scroll Horizontally, with multiple Div`s inside (59589)
  4. querySelector and querySelectorAll (30124)
  5. sPBM - Simple PHP Backup Manager (3402)

Popular pages this month

  1. Courses Web: PHP-MySQL JavaScript Node.js Ajax HTML CSS (473)
  2. CSS cursor property - Custom Cursors (79)
  3. The Mastery of Love (70)
  4. PHP-MySQL free course, online tutorials PHP MySQL code (62)
  5. CSS3 2D transforms (46)