What is cookie?
How to use Cookies in codeigniter?
How to set cookie, Get and Delete cookie in codeigniter?
Cookies are small data files that store specific information about the sessions. This could login status and cart contents. These files are stored in a “Cookies” folder
Creating and setting cookies in Codeigniter is easy because of a native helper class called Cookie helper class. This class has all the necessary methods for creating, setting and managing cookies in your Codeigniter projects.
we can set, get and delete cookie with codeigniter cookie helper
Creating the Cookies
Be fore using Cookie Helper functions you Should load cookie Helper , in the fallowing way :
$this->load->helper('cookie');
The Fallowing functions are available with Cookie Helper :
set_cookie()
get_cookie()
delete_cookie()
// set cookie
$cookie = array(
'name' => 'home_set',
'value' => 'home page Change',
'expire' => time()+86500,
'domain' => '.localhost',
'path' => '/',
'prefix' => 'arjun_',
);
set_cookie($cookie);
// get cookie
get_cookie('arjun_home_set');
// delete cookie
$cookie = array(
'name' => 'home_set',
'value' => '',
'expire' => '0',
'domain' => '.localhost',
'prefix' => 'arjun_'
);
delete_cookie($cookie);
set cookies :-
$cookie = array(
'name' => 'itech',
'value' => 'tuto',
'expire' => '3600'
);
$this->input->set_cookie($cookie);
Or
$this->input->set_cookie($name, $value, $expire, $domain, $path, $prefix, $secure);
Creating the Cookies :-
Class File :- cw_cookies.php
<?php
if ( ! defined('BASEPATH')) exit('Stop Its demostrate how to set cookie');
class cw_cookies extends CI_Controller {
function __construct()
{
parent::__construct();
$this->load->helper('cookie');
}
function set()
{
$cookie= array(
'name' => 'Cloudways Cookie',
'value' => 'This is Demonstration of how to set cookie in CI',
'expire' => '3600',
);
$this->input->set_cookie($cookie);
echo "Congragulatio Cookie Set";
}
function get()
{
echo $this->input->cookie('Cloudways Cookie',true);
}
}
Pass information in Cookies :-
CodeIgniter offers two ways of passing information in the cookies.
The method is the Array Method that involves passing an associative array as a parameter in the set().
$cookie = array(
'name' => 'cookie name',
'value' => 'itechxpert',
'expire' => '3600',
'domain' => 'itechtuto.com',
'path' => '/',
'secure' => TRUE
);
This structure is set using the following:
$this->input->set_cookie($cookie);
In this method, only the first two parameters (name and value) are required. The expiration of the cookie is set through the expire parameter. This is the number of seconds the developer wishes to retain the cookie. If this duration is set to zero, the cookie will be removed once the browser is closed. The cookie can be made site-wide by adding a period before the domain name (itechtuto.com).
Second Method :-
The second method involves passing individual parameters rather than the entire array. This method allows more control over the process of setting cookies because the developer could decide the parameters for the individual cookies. The prefered syntax is:
$this->input->set_cookie($first_parameter, $second_parameter, $third_parameter, $fourth_parameter);
Example :-
<?php
class Cookie_controller extends CI_Controller {
function __construct() {
parent::__construct();
$this->load->helper(array('cookie', 'url'));
}
public function index() {
set_cookie('cookie_name','cookie_value','3600');
$this->load->view('Cookie_view');
}
public function display_cookie() {
echo get_cookie('cookie_name');
$this->load->view('Cookie_view');
}
public function deletecookie() {
delete_cookie('cookie_name');
redirect('cookie/display');
}
}
?>
Cookie_view.php:-
<!DOCTYPE html>
<html lang = "en">
<head>
<meta charset = "utf-8">
<title>CodeIgniter View Example</title>
</head>
<body>
<a href = 'display'>Click Here</a> to view the cookie.<br>
<a href = 'delete'>Click Here</a> to delete the cookie.
</body>
</html>
Change the routes.php file in application/config/routes.php to add route for the above controller and add the following line at the end of the file.
$route['cookie'] = "Cookie_controller";
$route['cookie/display'] = "Cookie_controller/display_cookie";
$route['cookie/delete'] = "Cookie_controller/deletecookie";
Cookie
A cookie is a small peice of information stored on the users' computers browser. A cookie is often used to identify the user. There are a few steps to identify users.
The server script sends a set of cookies to the browser. For example, name, email or user_id.
The browser stores this information on the local machine for future use.
When the next time the browser sends any request to the server, it sends the cookies information to the server and the server uses that information to identify the user.
<?php
if (!defined('BASEPATH'))
exit('No direct script access allowed');
class Itechxpert extends CI_Controller {
function __construct() {
parent::__construct();
$this->load->helper('cookie');
}
function setCookie() {
$cookie = array(
'name' => 'remember_me',
'value' => '1',
'expire' => '300',
'secure' => TRUE
);
$this->input->set_cookie($cookie);
}
}
How to get the cookie values in CodeIgniter:
<?php
if (!defined('BASEPATH'))
exit('No direct script access allowed');
class Itechxpert extends CI_Controller {
function __construct() {
parent::__construct();
$this->load->helper('cookie');
}
function setCookie() {
$cookie = array(
'name' => 'remember_me',
'value' => '1',
'expire' => '300',
'secure' => TRUE
);
$this->input->set_cookie($cookie);
}
function getCookie() {
$name = $this->input->cookie('name');
echo $name;
}
}
Previous
Next