Php Code igniter Login and Registration Form
This tutorial will covered how to create a login and registration system. this system use developed php, mysql using code-igniter framework .
The database will require a table to store the usermaster, create a table called usermaster:
CREATE TABLE `usermaster`
( `User_Id` int(10) NOT NULL AUTO_INCREMENT, `User_Name` varchar(100) NOT NULL ,`User_Email` varchar(100) NOT NULL, `User_Mobile` bigint(11) NOT NULL, `User_Password` varchar(100) NOT NULL, `User_Photo` text NOT NULL,`User_Date` date NOT NULL, `User_Status` int(10) NOT NULL,PRIMARY KEY(`User_Id`), UNIQUE(`User_Email`), UNIQUE(`User_Mobile`))ENGINE=MyISAM DEFAULT CHARSET=latin1;CONTROLLER:
This controller class using access to very easily to access and pass data.
Welcome.php
<?php defined('BASEPATH') OR exit('No direct script access allowed');class Welcome extends CI_Controller {public function index(){if($this->session->userdata('Id') != ""){redirect('welcome/home');}Else {$this->load->library('session');$this->load->library('form_validation');$this->form_validation->set_rules('emailid','Username','trim|required');$this->form_validation->set_rules('password','Password','trim|required');if($this->form_validation->run()==false) {$this->load->view('login/index');}else {$this->db->select('*');$this->db->where('User_Status', 1);$query = $this->db->get('usermaster');$row = $query->row();$pass = md5($this->input->post('password')); $data1 = array('Id' => $row->User_Id,'Name'=>$row->User_Name,'Mobile'=>$row->User_Mobile,'Photo'=>$row->User_Photo,'Email'=>$row->User_Email);$session= $this->session->set_userdata($data1);if($row->User_Email==$this->input->post('emailid')) && ($row->User_Password==$pass)) {redirect('welcome/home/dashboard?m=Login Successfully ...!');}else{redirect('welcome?m1=Username & Password is Wrong');} } } }public function home() {if($this->session->userdata('Id') == "") {redirect('welcome');} else {$this->load->view('login/home');} }public function logout() {$this->session->sess_destroy();redirect('welcome');}public function photos() {$id = $this->input->get('id');$this->db->where('User_Email',$id);$this->db->where('User_Status',1);$row = $this->db->get('usermaster')->row();if($row) {echo $row->User_Photo;} else {echo "0";} }public function register() {if($this->session->userdata('Id') != ""){redirect('welcome/home');} else {$this->load->library('session');$this->load->library('form_validation');$this->form_validation->set_rules('registerEmail','Username','trim|required');$this->form_validation->set_rules('registerPassword','Password','trim|required');$this->form_validation->set_rules('firstName','First Name','trim|required');$this->form_validation->set_rules('registerMobile','Mobile No','trim|required');if($this->form_validation->run()==false) {$this->load->view('login/index');} else {$this->load->model('master_model');if($this->master_model->create_register()) { {redirect('welcome?m=Created Successfully..!');} else {redirect('welcome?m1=Not Created Successfully..!');}} } }public function forgottenpassword() {$emailid = $this->input->post('forgetEmail');$this->db->where('User_Email',$emailid);$this->db->where('User_Status',1);$row = $this->db->get('usermaster')->row();$email_config = Array('protocol' => 'smtp','smtp_host' => 'mail.esec.in','smtp_port' => '25','smtp_user' => 'info@esec.in','smtp_pass' => 'Success999#','mailtype' => 'html','charset' => 'iso-8859-1','wordwrap' => TRUE,'crlf' => '\r\n','starttls' => true,'newline' => "\r\n");$msg = "<p>Your register Email Id : ".$emailid."</p>";$msg .= "<p>Please click link here to confirm your registration.</p>";$msg .= "<h1><a href='".base_url()." welcome/forgottenpasswordapproval/".$row->User_Id."' >Change Password To Click</a></h1>";$subject='Forgotten Password';$this->load->library('email', $email_config);$this->email->from('info@esec.in', 'Forgotten Password');$this->email->to($emailid);$this->email->subject($subject);$this->email->message($msg);if($this->email->send()) {redirect('welcome?m1=Sending Email Successfully..!');} else {redirect('welcome?m1=Sending Email Successfully..!');} }public function forgottenpasswordapproval($id) {$data['id']= $id;$this->load->view('login/forgettenpassword',$data);}public function forgottenpasswordapprovalprocess($id) {$ForgettenPassword = $this->input->post('registerPassword');$data= array('User_Password'=>MD5($ForgettenPassword),'User_Status'=>1);$this->db->where('User_Id',$id);$sql = $this->db->update('usermaster',$data);if($sql) {redirect('welcome?m=Created Successfully..!');} else {redirect('welcome');} } } ?>VIEWS:
Index.php
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>Learnoops Login</title><link rel="stylesheet" href="<?php echo base_url(); ?>assets/login/css/bootstrap.min.css" /><link rel="stylesheet" href="http://netdna.bootstrapcdn.com/font-awesome/3.1.1/css/font-awesome.min.css" /><link href='http://fonts.googleapis.com/css?family=Lato:400,700' rel='stylesheet' type='text/css' /><!-- <link rel="stylesheet" href="/css/lib/bootstrap-responsive.min.css"> --><link rel="stylesheet" href="<?php echo base_url(); ?>assets/login/css/main.css" /><script src="<?php echo base_url(); ?>assets/login/js/jquery.min.js"></script><script src="<?php echo base_url(); ?>assets/login/js/bootstrap.min.js"></script><script>$(document).ready(function(){$("#emailid").change(function () {var search=$("#emailid").val();var dataString = 'id='+search;$.ajax({type:'GET',url:'<?php echo base_url();?>welcome/photos',data:dataString,dataType:'html',cache:false,success:function(todo) {if(todo != 0) { gravatar = '<?php echo base_url(); ?>upload/user/' + todo;$('.apollo-image').css('backgroundImage', 'none');$('.apollo-image').css('background-repeat', 'no-repeat');$('<img />').attr('src', gravatar).imagesLoaded(function(){$('.apollo-image').css('backgroundImage', 'url(' + gravatar + ')');}); }else {alert("This Email Not Register");$("#emailid").val("");$("#emailid").focus();} } }); }); $("#emailid").change(function () {var search=$("#emailid").val();var dataString = 'id='+search;$.ajax({type:'GET',url:'<?php echo base_url();?>welcome/photos',data:dataString,dataType:'html',cache:false,success:function(todo) { if(todo != 0) { gravatar = '<?php echo base_url(); ?>upload/user/' + todo;$('.apollo-image').css('backgroundImage', 'none');$('.apollo-image').css('background-repeat', 'no-repeat');$('<img />').attr('src', gravatar).imagesLoaded(function(){$('.apollo-image').css('backgroundImage', 'url(' + gravatar + ')');}); }Else {alert("This Email Not Register");$("#emailid").val("");$("#emailid").focus();} } }); });$("#forgetEmail").change(function () {var search=$("#forgetEmail").val();var dataString = 'id='+search;$.ajax({type:'GET',url:'<?php echo base_url();?>welcome/photos',data:dataString,dataType:'html',cache:false,success:function(todo) {if(todo != 0) { gravatar = '<?php echo base_url(); ?>upload/user/' + todo;$('.apollo-image').css('backgroundImage', 'none');$('.apollo-image').css('background-repeat', 'no-repeat');$('<img />').attr('src', gravatar).imagesLoaded(function(){$('.apollo-image').css('backgroundImage', 'url(' + gravatar + ')');}); }Else {alert("This Email Not Register");$("#forgetEmail").val("");$("#forgetEmail").focus();} }}); }); });</script></head><body><div class="apollo"><div class="apollo-container clearfix"><div class="apollo-facebook"><div class="apollo-image"></div></div><!-- id="apollo-register-form" --><div class="apollo-register"><form class="form-signin" action="<?php echo base_url(); ?>welcome/register" method="POST" enctype="multipart/form-data"><div class="form-group"><input type="text" value="" id="registerEmail" name="registerEmail" class="form-control email" placeholder="Email address"/></div><div class="form-group"><input type="password" value="" name="registerPassword" name="registerPassword" class="form-control" placeholder="Password"/></div><div class="form-group"><input type="password" value="" name="registerCPassword" name="registerCPassword" class="form-control" placeholder="Confirm password"/></div><p class="apollo-seperator"> about you </p><div class="form-group"><input type="text" value="" class="form-control" id="firstName" name="firstName" placeholder="First name"/></div><div class="form-group"><input type="text" value="" class="form-control" id="lastName" name="lastName" placeholder="Last name"/></div><div class="form-group"><input type="text" value="" id="registerMobile" name="registerMobile" class="form-control mobile" placeholder="Mobile No"/></div><div class="form-group"><input type="file" id="registerPhoto" name="registerPhoto" class="form-control mobile" placeholder="Select Photo"/></div><button class="btn btn-lg btn-block btn-primary" type="submit">Register</button></form><p class="apollo-back"> <a href="#"><i class="icon-arrow-left"></i> back to login</a> </p></div><div class="apollo-login"><!-- id="apollo-login-form" --><form class="form-signin" action="<?php echo base_url(); ?>welcome" method="POST"><div class="form-group"><input type="text" value="" name="emailid" id="emailid" class="form-control email" placeholder="Email address"/></div><div class="form-group"><input type="password" value="" name="password" id="password" class="form-control" placeholder="Password"/></div><button class="btn btn-lg btn-signin btn-block" type="submit">Sign in</button></form><!--<p class="apollo-seperator"> @ </p><button class="btn btn-block btn-facebook btn-lg">Connect with <strong>Facebook</strong></button>--><p class="apollo-register-account"> <a href="#" class="register-link">Need an account? <strong>Register here </strong><i class="icon-arrow-right"></i></a><br/><a href="#" class="password-link"><small>Forgot your password?</small></a> </p><p class="apollo-change-account"> <a href="#"><i class="icon-arrow-left"></i><strong>Not you?</strong> Sign in as a different user</a> </p></div><!-- id="apollo-forgotten-password-form" --><div class="apollo-forgotten-password"><form class="form-signin" action="<?php echo base_url(); ?>welcome/forgottenpassword" method="POST"><div class="form-group"><input type="text" value="" class="form-control email" name="forgetEmail" id="forgetEmail" placeholder="Email address"/></div><button class="btn btn-lg btn-block btn-primary" type="submit">Reset password</button></form><p class="apollo-back"> <a href="#"><i class="icon-arrow-left"></i> back to login</a> </p></div><div class="apollo-logging-in"><h2>Welcome back<span class="user-name"></span>!</h2><p><strong>Please wait whilst we securely log you in…</strong></p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus dignissim enim suscipit massa ornare rutrum.</p></div><div class="apollo-registering"><h2>Thanks<span class="user-name"></span>!</h2><p><strong>We've sent you an activation email, blah blah...</strong></p><p>Nullam ac erat nunc. Donec in orci purus, vel tempor tortor. Integer tincidunt ipsum sed ipsum scelerisque malesuada.</p></div><div class="apollo-password-reset"><h2>Check your email</h2><p><strong>We've sent you a link, blah blah...</strong></p><p>Nullam ac erat nunc. Donec in orci purus, vel tempor tortor. Integer tincidunt ipsum sed ipsum scelerisque malesuada.</p></div></div></div><img /><script src="<?php echo base_url(); ?>assets/login/js/images.js"></script><script src="<?php echo base_url(); ?>assets/login/js/main.js"></script><script>$(function(){$('[name="optionsRadios"]').change(function(){if($(this).val() == 'yes'){window.location.href="/?hasAccount"}else {window.location.href = '/';} }); });</script></body></html>forgettenpassword.php
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>Learnoops Login</title><link rel="stylesheet" href="<?php echo base_url(); ?>assets/login/css/bootstrap.min.css" /><link rel="stylesheet" href="http://netdna.bootstrapcdn.com/font-awesome/3.1.1/css/font-awesome.min.css" /><link href='http://fonts.googleapis.com/css?family=Lato:400,700' rel='stylesheet' type='text/css' /><!-- <link rel="stylesheet" href="/css/lib/bootstrap-responsive.min.css"> --><link rel="stylesheet" href="<?php echo base_url(); ?>assets/login/css/main.css" /><script src="<?php echo base_url(); ?>assets/login/js/jquery.min.js"></script><script src="<?php echo base_url(); ?>assets/login/js/bootstrap.min.js"></script></head><body><div class="apollo"><div class="apollo-container clearfix"><div class="apollo-facebook"><div class="apollo-image"></div></div><div class="apollo-login"><form class="form-signin" action="<?php echo base_url(); ?>welcome/forgottenpasswordapprovalprocess/<?php echo $id; ?>" method="POST" enctype="multipart/form-data"><div class="form-group"><input type="password" value="" name="registerPassword" name="registerPassword" class="form-control" placeholder="Password"/></div><div class="form-group"><input type="password" value="" name="registerCPassword" name="registerCPassword" class="form-control" placeholder="Confirm password"/></div><button class="btn btn-lg btn-block btn-primary" type="submit">Submit</button></form></div></div></div><img /><script src="<?php echo base_url(); ?>assets/login/js/images.js"></script><script src="<?php echo base_url(); ?>assets/login/js/main.js"></script><script>$(function(){$('[name="optionsRadios"]').change(function(){if($(this).val() == 'yes'){window.location.href="/?hasAccount"}else {window.location.href = '/';}});})</script></body></html>MODEL:
Master_model.php
<?phpclass Master_model extends CI_Model { public function create_register() { $dates =date('Y-m-d'); $registerEmail = $this->input->post('registerEmail'); $registerPassword = $this->input->post('registerPassword'); $firstName = $this->input->post('firstName'); $lastName = $this->input->post('lastName'); $registerMobile = $this->input->post('registerMobile'); $registerPhoto = $this->input->post('registerPhoto'); $fullname = $firstName." ".$lastName; $this->load->library('upload'); $config['upload_path'] = './upload/user/'; $config['allowed_types'] = 'jpg|jpeg|png|gif'; $config['max_size'] = '1000000'; $images=''; $this->upload->initialize($config); if(!empty($_FILES['registerPhoto']['name'])) { if($this->upload->do_upload('registerPhoto')) { $data = $this->upload->data(); $images = $data['file_name']; } else { $this->upload->display_errors(); } } $data= array( 'User_Name'=>$fullname, 'User_Email'=>$registerEmail, 'User_Mobile'=>$registerMobile, 'User_Password'=>MD5($registerPassword), 'User_Photo'=>$images, 'User_Date'=>$dates, 'User_Status'=>1); $sql = $this->db->insert('usermaster',$data); if($sql) return true; else return false; } } ?>
No comments:
Post a Comment