Codeigniter Tutorials
- What is codeigniter?
- Application_Architecture
- MVC Architecture
- HMVC Architecture
- Codeigniter Configuration
- Remove index.php from url in codeigniter
- MVC Concept
- View
- Alternate PHP Syntax for View Files
- Routing
- Codeigniter URL
- Get Current URL
- Previous page URL get
- Seo Friendly URL
- Slug Create in codeigniter
- What is _remap() function
- Remove controller name from url in codeigniter
- Codeigniter Controller Class
- Class Constructor
- GET $ POST method in Codeigniter
- Models
- Basepath, Apppath, FCPATH
- URI Segment
- Page Redirect
- Helper class
- Custom Helper class
- Form Helper
- Common Helper Functions
- Common Function
- Array Problems
- Call controller in Helper
- Add active class to menu using Helper class
- Custom Library
- Custom Library Example
- when to use get_instance()
- Codeigniter Hook
- how to work inline css in codeigniter
- Custom 404 page
- 404 custom error page
- Create custom config file in codeigniter
- How to set and get config item value
- How to Speed Up CodeIgniter App?
- Codeigniter Functions
- Session
- cookies
- How to Set & Get Tempdata in Codeigniter
- flash messages in Codeigniter
- Flashdata
- Encryption and Decryption In CodeIgniter
- Codeigniter security
- csrf token form security
- Password Hashing
- Form Validation
- Custom Validation
- Registration Form with validation
- Server Side Form Validation
- Validate Select Option Field
- Date Format Validation
- Date Format change in codeigniter
- Date Functions
- DOB Validation
- CI CRUD
- User SignUp
- User Login
- User Logout
- Login Account
- Login form with RememberMe
- Login Form with session
- User change password
- Change Password with Callback Validation to Check Old Password
- Forgot password
- Reset password
- Insert data in database
- Fetch data from database
- Update data in database
- Delete data in database
- File Upload
- Image Upload with resize Image
- Upload Multiple file and images
- Upload Multiple images with CRUD
- File and image update
- Upload Image Using Ajax.
- Email Send
- Email Send Using Email library
- Email Send Using SMTP Gmail
- Notification send
- store data in json format in DB
- Json parse
- Fetch data Using Ajax with Json data
- How to Show data Using Ajax with Json parse
- Get JSON Data from PHP Script using jQuery Ajax
- Insert data Using Ajax
- Submit data Using Ajax with form validation
- How to show data Using Ajax in codeigniter
- Insert & Update Using Ajax
- Registration Form With Validation Using Ajax in codeigniter
- Delete data Using Ajax Confirmation
- Delete All data Using checkbox selection
- Ajax CSRF Token
- Ajax Post
- Ajax serverside form validation
- Contact form using AJAX with form validation
- DataTable Using Ajax dynamically
- DataTables pagination using AJAX with Custom filter
- DataTables AJAX Pagination with Search and Sort in codeigniter
- DataTables in Codeigniter using Ajax
- Ajax Custom Serarch
- Ajax Live Data Search using Jquery PHP MySql
- Ajax Custom Serarch and sorting in datatable
- Dynamic Search Using Ajax
- Autocomplete using jquery ajax
- Jquery Ajax Autocomplete Search using Typeahead
- Dynamic Dependent Dropdown Using Ajax
- Dynamic Dependent Dropdown list Using Ajax
- Dynamic Dependent Dropdown in codeigniter using Ajax
- ajax username/email availability check using JQuery
- Check Email Availability Using Ajax
- Data Load on mouse scroll
- Ajax CI Pagination
- Pagination in codeigniter
- Ajax Codeigniter Pagination
- email exists or not using ajax with json
- CRUD using AJAX With Modal popup in CI
- Add / Show Data on modal popup using Ajax
- Modal popup Validation using Ajax
- Data show on Modal popup Using Ajax
- Add / Remove text field dynamically using jquery ajax
- How to Add/Delete Multiple HTML Rows using JavaScript
- Delete Multiple Rows using Checkbox
- Multiple Checkbox value
- Form submit using jquery Example
- REST & SOAP API
- Multi-Language implementation in CodeIgniter
- How to pass multiple array in view
- Captcha
- create zip file and download
- PhpOffice PhpSpreadsheet Library (Export data in excel sheet)
- data export in excel sheet
- Excel File generate in Codeigniter using PHPExcel
- Dompdf library
- tcpdf library
- Html table to Excel & docs download
- CI Database Query
- Database Query
- SQL Injection Prevention
- Auth Model
- Join Mysql
- Tree View in dropdown option list
- OTP Integration in codeigniter
- curl post
- download file using curl
- Sweet Alert
- Sweet alert Delete & Success
- Log Message in Codeigniter
- Menu & Submenu show dynamically
- Set Default value in input box
- Cron Jobs
- Stored Procedure
- Display Loading Image when AJAX call is in Progress
- Send SMS
- IP Address
- Codeigniter Tutorialspoint
- Website Link
- How To Create Dynamic Xml Sitemap In Codeigniter
- Paypal Payment Integration
- Get Latitude and Longitude From Address in Codeigniter Using google map API
- How To Create Simple Bar Chart In Codeigniter Using AmCharts?
- dynamic Highcharts in Codeigniter
- Barcode in Codeigniter
- Codeigniter Interview Questions
- Project
Home » Codeigniter »
How to reset password in codeigniter?
View
File Name :
<center><h3 class='flashMsg flashSuccess' style="color: green;"> <?=$this->session->flashdata('successmsg')?> </h3></center>
<!-- <form action="<?php echo base_url()?>admin/profile/change_password/<?php echo $this->session->userdata('adminid');?>" method="post" name="" class="">-->
<form action="<?php echo base_url()?>admin/profile/changePassword/<?php echo $this->session->userdata('adminid');?>" method="post" name="" class="">
<div class="row">
<div class="col-xl-4 col-lg-6 col-12 form-group">
<label>Old Password *</label>
<input type="password" <?php echo set_value('old_password'); ?> placeholder="Old Password" name="old_password" class="form-control">
<?php if(form_error('old_password')){echo "<span style='color:red'>".form_error('old_password')."</span>";} ?>
</div>
<div class="col-xl-4 col-lg-6 col-12 form-group">
<label>New Password *</label>
<input type="password" <?php echo set_value('new_password'); ?> placeholder="New Password" name="new_password" class="form-control">
<?php if(form_error('new_password')){echo "<span style='color:red'>".form_error('new_password')."</span>";} ?>
</div>
<div class="col-xl-4 col-lg-6 col-12 form-group">
<label>Confirm Password *</label>
<input type="password" <?php echo set_value('confirm_password'); ?> placeholder="Confirm Password" name="confirm_password" class="form-control">
<?php if(form_error('confirm_password')){echo "<span style='color:red'>".form_error('confirm_password')."</span>";} ?>
</div>
</div>
<div class="col-12 form-group mg-t-8">
<button type="submit" class="btn-fill-lg btn-gradient-yellow btn-hover-bluedark">Save</button>
<button type="reset" class="btn-fill-lg bg-blue-dark btn-hover-yellow">Reset</button>
</div>
</form>
Controller
File Name : Profile.php
<?php
defined('BASEPATH') OR exit('no direct script access allowed');
class Profile extends CI_Controller
{
public function __construct()
{
parent::__construct();
if(! $this->session->userdata('admin_id'))
{
redirect('admin/login');
}
/*
$loggedIn = $this->session->userdata('admin_id');
if(!$loggedIn)
{
redirect('admin/login');
}
*/
/*
if($this->session->userdata('username') == NULL ) {
redirect('admin/login');
}
*/
}
// ########################################################
public function index()
{
$data = array();
$data['title'] = "Admin Profile";
$this->load->view('admin/header',$data);
$this->load->view('admin/profile');
$this->load->view('admin/footer');
}
// ################################# Password Reset #################
public function change_password($id='')
{
$rules = array(
[
'field' => 'old_password',
'label' => 'Old Password',
'rules' => 'required',
],
[
'field' => 'new_password',
'label' => 'New Password',
'rules' => 'callback_valid_password',
],
[
'field' => 'confirm_password',
'label' => 'Confirm Password',
'rules' => 'matches[new_password]',
],
);
$this->form_validation->set_rules($rules);
if($this->form_validation->run()==FALSE)
{
$this->load->view('admin/header');
$this->load->view('admin/profile');
$this->load->view('admin/footer');
}
else
{
$data['oldpass'] = md5($this->input->post('old_password'));
$newpassword = md5($this->input->post('new_password'));
$userinfo = $this->Admin_model->reset_password_verify($id,$data);
if(!empty($userinfo)){
$data_array = array(
'id' => $id,
'password' => $newpassword
);
$updatedata = $this->Admin_model->password_reset($data_array);
$this->session->set_flashdata('successmsg', '<div class="alert alert-success" text-center"><h3>Your Password Successfully Updated !</h3></div>');
redirect('admin/profile');
}
else{
$this->session->set_flashdata('successmsg', '<div class="alert alert-success" text-center"><h3>Plase Check Your Old Password</h3></div>');
redirect('admin/profile');
}
}
}
//Create strong password
public function valid_password($password = '')
{
$password = trim($password);
$regex_lowercase = '/[a-z]/';
$regex_uppercase = '/[A-Z]/';
$regex_number = '/[0-9]/';
$regex_special = '/[!@#$%^&*()\-_=+{};:,<.>ยง~]/';
if (empty($password))
{
$this->form_validation->set_message('valid_password', 'The {field} field is required.');
return FALSE;
}
if (preg_match_all($regex_lowercase, $password) < 1)
{
$this->form_validation->set_message('valid_password', 'The {field} field must be at least one lowercase letter.');
return FALSE;
}
if (preg_match_all($regex_uppercase, $password) < 1)
{
$this->form_validation->set_message('valid_password', 'The {field} field must be at least one uppercase letter.');
return FALSE;
}
if (preg_match_all($regex_number, $password) < 1)
{
$this->form_validation->set_message('valid_password', 'The {field} field must have at least one number.');
return FALSE;
}
if (preg_match_all($regex_special, $password) < 1)
{
$this->form_validation->set_message('valid_password', 'The {field} field must have at least one special character.' . ' ' . htmlentities('!@#$%^&*()\-_=+{};:,<.>ยง~'));
return FALSE;
}
if (strlen($password) < 5)
{
$this->form_validation->set_message('valid_password', 'The {field} field must be at least 5 characters in length.');
return FALSE;
}
if (strlen($password) > 32)
{
$this->form_validation->set_message('valid_password', 'The {field} field cannot exceed 32 characters in length.');
return FALSE;
}
return TRUE;
}
//strong password end
// ################################# End Password Reset #################
// #############################################################
public function changePassword($id='')
{
$data['title'] = 'Change Password';
$this->form_validation->set_rules('old_password', 'old password', 'trim|required|callback_password_check');
$this->form_validation->set_rules('new_password', 'new password', 'trim|required');
$this->form_validation->set_rules('confirm_password', 'confirm password', 'required|matches[new_password]');
$this->form_validation->set_error_delimiters('<div class="error">', '</div>');
if($this->form_validation->run() == false) {
$this->load->view('admin/header');
$this->load->view('admin/profile');
$this->load->view('admin/footer');
}
else {
$data['oldpass'] = md5($this->input->post('old_password'));
$newpassword = md5($this->input->post('new_password'));
$data_array = array(
'id' => $id,
'password' => $newpassword
);
$updatedata = $this->Admin_model->password_reset($data_array);
$this->session->set_flashdata('successmsg', '<div class="alert alert-success" text-center"><h3>Your Password Successfully Updated !</h3></div>');
redirect('admin/profile');
}
}
public function password_check($old_password)
{
$id = $this->session->userdata('adminid');
$user = $this->Admin_model->password_verify($id);
if($user->password !== md5($old_password)) {
$this->form_validation->set_message('password_check', 'The {field} does not match');
return false;
}
return true;
}
// #############################################################
}
Model
File Name : Admin_model.php
public function reset_password_verify($id,$data)
{
$this->db->select('*');
$this->db->from('admin_info');
$this->db->where('id',$id);
$this->db->where('password',$data['oldpass']);
$qry = $this->db->get();
return $qry->result();
}
public function password_reset($data_array)
{
$this->db->where('id', $data_array['id']);
$this->db->update('admin_info', $data_array);
return true;
}
public function password_verify($id)
{
$this->db->where('id', $id);
$query = $this->db->get('admin_info');
return $query->row();
}
File Name :
File Name :
File Name :