CoderFunda
  • Home
  • About us
    • Contact Us
    • Disclaimer
    • Privacy Policy
    • About us
  • Home
  • Php
  • HTML
  • CSS
  • JavaScript
    • JavaScript
    • Jquery
    • JqueryUI
    • Stock
  • SQL
  • Vue.Js
  • Python
  • Wordpress
  • C++
    • C++
    • C
  • Laravel
    • Laravel
      • Overview
      • Namespaces
      • Middleware
      • Routing
      • Configuration
      • Application Structure
      • Installation
    • Overview
  • DBMS
    • DBMS
      • PL/SQL
      • SQLite
      • MongoDB
      • Cassandra
      • MySQL
      • Oracle
      • CouchDB
      • Neo4j
      • DB2
      • Quiz
    • Overview
  • Entertainment
    • TV Series Update
    • Movie Review
    • Movie Review
  • More
    • Vue. Js
    • Php Question
    • Php Interview Question
    • Laravel Interview Question
    • SQL Interview Question
    • IAS Interview Question
    • PCS Interview Question
    • Technology
    • Other

11 December, 2018

CodeIgniter - Session Management

 Programing Coderfunda     December 11, 2018     codeigniter, CodeIgniter Session Management     No comments   

CodeIgniter - Session Management


When building websites, we often need to track user’s activity and state and for this purpose, we have to use session. CodeIgniter has session class for this purpose.

Initializing a Session

Sessions data are available globally through the site but to use those data we first need to initialize the session. We can do that by executing the following line in constructor.
$this->load->library('session');
After loading the session library, you can simply use the session object as shown below.
$this->session

Add Session Data

In PHP, we simply use $_SESSION array to set any data in session as shown below.
$_SESSION[‘key’] = value;
Where ‘key’ is the key of array and value is assigned on right side of equal to sign.
The same thing can be done in CodeIgniter as shown below.
$this->session->set_userdata('some_name', 'some_value');
set_userdata() function takes two arguments. The first argument, some_name, is the name of the session variable, under which, some_valuewill be stored.
set_userdata() function also supports another syntax in which you can pass array to store values as shown below.
$newdata = array( 
   'username'  => 'johndoe', 
   'email'     => 'johndoe@some-site.com', 
   'logged_in' => TRUE
);  

$this->session->set_userdata($newdata);

Remove Session Data

In PHP, we can remove data stored in session using the unset() function as shown below.
unset($_SESSION[‘some_name’]);
Removing session data in CodeIgniter is very simple as shown below. The below version of unset_userdata() function will remove only one variable from session.
$this->session->unset_userdata('some_name');
If you want to remove more values from session or to remove an entire array you can use the below version of unset_userdata() function.
$this->session->unset_userdata($array_items);

Fetch Session Data

After setting data in session, we can also retrieve that data as shown below. Userdata() function will be used for this purpose. This function will return NULL if the data you are trying to access is not available.
$name = $this->session->userdata('name');

Example

Create a controller class called Session_controller.php and save it in application/controller/Session_controller.php.
<?php 
   class Session_controller extends CI_Controller {
 
      public function index() { 
         //loading session library 
         $this->load->library('session');
   
         //adding data to session 
         $this->session->set_userdata('name','virat');
   
         $this->load->view('session_view'); 
      } 
  
      public function unset_session_data() { 
         //loading session library
         $this->load->library('session');
   
         //removing session data 
         $this->session->unset_userdata('name'); 
         $this->load->view('session_view'); 
      } 
  
   } 
?>
Create a view file called session_view.php and save it in application/views/session_view.php
<!DOCTYPE html> 
<html lang = "en">
 
   <head> 
      <meta charset = "utf-8"> 
      <title>CodeIgniter Session Example</title> 
   </head>
 
   <body> 
      Welcome <?php echo $this->session->userdata('name'); ?> 
      <br> 
      <a href = 'http://localhost:85/CodeIgniter-3.0.1/CodeIgniter3.0.1/index.php/sessionex/unset'>
         Click Here</a> to unset session data. 
   </body>
 
</html>
Make the changes in the routes.php file in application/config/routes.phpand add the following line at the end of the file.
$route['sessionex'] = 'Session_Controller';
Execute the above example by using the following address. Replace yoursite.com with the URL of your site.
http://yoursite.com/index.php/sessionex
  • Share This:  
  •  Facebook
  •  Twitter
  •  Google+
  •  Stumble
  •  Digg
Email ThisBlogThis!Share to XShare to Facebook

Related Posts:

  • CodeIgniter Benchmarking,CodeIgniterSetting Benchmark PointsIf you want to measure the time taken to execute a set of lines or memory usage, you can calculate it by using Benchmarking po… Read More
  • CodeIgniter Common Functions,CodeIgniterCodeIgniter - Common FunctionsCodeIgniter library functions and helper functions need to be initialized before they are used but there are some common… Read More
  • CodeIgniter - Application ProfilingWhen building a web application, we are very much concerned about the performance of the website in terms of how much time the controller took to exec… Read More
  • CodeIgniter - Page RedirectionCodeIgniter - Page RedirectionWhile building web application, we often need to redirect the user from one page to another page. CodeIgniter makes this… Read More
  • CodeIgniter - Page CachingCodeIgniter - Page CachingCaching a page will improve the page load speed. If the page is cached, then it will be stored in its fully rendered state. … Read More
Newer Post Older Post Home

0 comments:

Post a Comment

Thanks

Meta

Popular Posts

  • Spring boot app (error: method getFirst()) failed to run at local machine, but can run on server
    The Spring boot app can run on the online server. Now, we want to replicate the same app at the local machine but the Spring boot jar file f...
  • Log activity in a Laravel app with Spatie/Laravel-Activitylog
      Requirements This package needs PHP 8.1+ and Laravel 9.0 or higher. The latest version of this package needs PHP 8.2+ and Laravel 8 or hig...
  • Failed to install 'cordova-plugin-firebase': CordovaError: Uh oh
    I had follow these steps to install an configure firebase to my cordova project for cloud messaging. https://medium.com/@felipepucinelli/how...
  • Laravel auth login with phone or email
          <?php     Laravel auth login with phone or email     <? php     namespace App \ Http \ Controllers \ Auth ;         use ...
  • Cashier package and Blade files
    I'm a little confused about this Cashier package. I installed it using the Laravel website (with composer), but noticed there's no...

Categories

  • Ajax (26)
  • Bootstrap (30)
  • DBMS (42)
  • HTML (12)
  • HTML5 (45)
  • JavaScript (10)
  • Jquery (34)
  • Jquery UI (2)
  • JqueryUI (32)
  • Laravel (1017)
  • Laravel Tutorials (23)
  • Laravel-Question (6)
  • Magento (9)
  • Magento 2 (95)
  • MariaDB (1)
  • MySql Tutorial (2)
  • PHP-Interview-Questions (3)
  • Php Question (13)
  • Python (36)
  • RDBMS (13)
  • SQL Tutorial (79)
  • Vue.js Tutorial (68)
  • Wordpress (150)
  • Wordpress Theme (3)
  • codeigniter (108)
  • oops (4)
  • php (853)

Social Media Links

  • Follow on Twitter
  • Like on Facebook
  • Subscribe on Youtube
  • Follow on Instagram

Pages

  • Home
  • Contact Us
  • Privacy Policy
  • About us

Blog Archive

  • September (100)
  • August (50)
  • July (56)
  • June (46)
  • May (59)
  • April (50)
  • March (60)
  • February (42)
  • January (53)
  • December (58)
  • November (61)
  • October (39)
  • September (36)
  • August (36)
  • July (34)
  • June (34)
  • May (36)
  • April (29)
  • March (82)
  • February (1)
  • January (8)
  • December (14)
  • November (41)
  • October (13)
  • September (5)
  • August (48)
  • July (9)
  • June (6)
  • May (119)
  • April (259)
  • March (122)
  • February (368)
  • January (33)
  • October (2)
  • July (11)
  • June (29)
  • May (25)
  • April (168)
  • March (93)
  • February (60)
  • January (28)
  • December (195)
  • November (24)
  • October (40)
  • September (55)
  • August (6)
  • July (48)
  • May (2)
  • January (2)
  • July (6)
  • June (6)
  • February (17)
  • January (69)
  • December (122)
  • November (56)
  • October (92)
  • September (76)
  • August (6)

  • Failed to install 'cordova-plugin-firebase': CordovaError: Uh oh - 9/21/2024
  • pyspark XPath Query Returns Lists Omitting Missing Values Instead of Including None - 9/20/2024
  • SQL REPL from within Python/Sqlalchemy/Psychopg2 - 9/20/2024
  • MySql Explain with Tobias Petry - 9/20/2024
  • How to combine information from different devices into one common abstract virtual disk? [closed] - 9/20/2024

Laravel News

  • Auto-translate Application Strings with Laratext - 5/16/2025
  • Simplify Factory Associations with Laravel's UseFactory Attribute - 5/13/2025
  • Improved Installation and Frontend Hooks in Laravel Echo 2.1 - 5/15/2025
  • Filter Model Attributes with Laravel's New except() Method - 5/13/2025
  • Arr::from() Method in Laravel 12.14 - 5/14/2025

Copyright © 2025 CoderFunda | Powered by Blogger
Design by Coderfunda | Blogger Theme by Coderfunda | Distributed By Coderfunda