Cara Membuat Login dengan Session pada CodeIgniter 3

Session merupakan metode yang untuk hemat sebuah aktifitas pada sebuah komputer pribadi, pada tutorial kali ini kita pasti akan mencoba membuat sebuah login pada CodeIgniter 3 dengan menggunakan session.

Dalam tutorial ini, kita pasti akan menemukan mengkhawatirkan membuat kind login sedang di CodeIgniter. Pada kind login, perusahaan kita membuat modul registrasi, modul login dan juga papan admin menggunakan session.

Membuat pengobatan di CodeIgniter dengan cara yang berbeda berasal dari PHP sedang. Kita pasti akan memberi Anda info ditentukan mengkhawatirkan semua prosedur kedua kita melangkah lebih kendali jarak jauh sangat tutorial ini. Sebelum memulai, mari kita pemandangan apa yang pasti akan kita pelajari.

  1. Membuat taman login, taman pendaftaran dan juga taman admin.
  2. Menyiapkan validasi untuk semua enter berasal dari masukan consumer. Check pelanggan yang ada di database sepanjang prosedur pendaftaran.
  3. Check username dan juga password pada database dan juga menunjukkan info yang tersimpan pada database.
  4. Membuat pengobatan untuk papan admin, selalu menjaga informasi enter berasal dari pelanggan kedalam sebuah session dan juga merusak atau bahkan menghapus Session (logout).

Kami memperkenalkan Alur pekerjaan fungsi yang pasti akan memberi Anda gambaran yang pastinya mengkhawatirkan niat tutorial ini.

  1. Terdapat Login Form pada fungsi.
  2. Login Form berisi username dan juga password.
  3. Check validasi berasal dari username dan juga password.
  4. Kalau cara yang benar atau bahkan ada pada database, oleh karena itu membuat pengobatan dan juga hemat info consumer berasal dari database langsung ke pengobatan informasi.
  5. redirect langsung ke admin web page.
  6. menampilkan info consumer pada admin web page.
  7. menampilkan beralih logout.
  8. kalau logout diklik, oleh karena itu pengobatan dihapus.
  9. redirect langsung ke login web page.

Pertama, melimpahkan atau bahkan set base URL sangat file config.php pada CodeIgniter 3 seperti mendirikan yang disediakan dibawah ini:

$config['base_url'] = 'http://localhost/login/';

ini cara Akun folder CodeIgniter 3 kita adalah login.

Cara Pembuatan Login

Di mendasarkan ini adalah informasi kode yang digunakan sangat tutorial ini dengan deskripsi yang sesuai.

1. Membuat Tabel dan juga Database

Hal awalnya adalah membuat Akun database dengan Akun database login dan juga membuat sebuah tabel dengan Akun tabel user_login menggunakan kode yang disediakan dibawah ini

create database login;
CREATE TABLE IF NOT EXISTS `user_login` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`user_name` varchar(255) NOT NULL,
`user_email` varchar(255) NOT NULL,
`user_password` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) 

2. Membuat Controller

Sebelum memulai pengkodean atau bahkan memulai membuat kode, mari load semua library yang dibutuhkan untuk membuat dan juga menyediakan formulir login.

Lihat lebih banyak:  12 Penyebab Laptop Panas Berlebihan Wajib Diketahui

Pertama kita penting sekelompok library session dan juga library validation sangat file Controller. Jadi, mari awal membuat kode dengan Controller.

Kita kembangkan Akun file controller dengan Akun user_authentication.php pada folder software / controllers di CodeIgniter 3. Kemudian menulis kode yang disediakan dibawah ini sangat file.

<?php

session_start(); //we have to begin session in an effort to entry it via CI

Class User_Authentication extends CI_Controller {

public perform __construct() {
dad or mum::__construct();

// Load kind helper library
$this->load->helper('kind');

// Load kind validation library
$this->load->library('form_validation');

// Load session library
$this->load->library('session');

// Load database
$this->load->desain('login_database');
}

// Show login web page
public perform index() {
$this->load->view('login_form');
}

// Show registration web page
public perform user_registration_show() {
$this->load->view('registration_form');
}

// Validate and retailer registration informasi in database
public perform new_user_registration() {

// Check validation for consumer enter in SignUp kind
$this->form_validation->set_rules('username', 'Username', 'trim|required|xss_clean');
$this->form_validation->set_rules('email_value', 'Email', 'trim|required|xss_clean');
$this->form_validation->set_rules('password', 'Password', 'trim|required|xss_clean');
if ($this->form_validation->run() == FALSE) {
$this->load->view('registration_form');
} else {
$informasi = array(
'user_name' => $this->input->publish('username'),
'user_email' => $this->input->publish('email_value'),
'user_password' => $this->input->publish('password')
);
$end result = $this->login_database->registration_insert($informasi);
if ($end result == TRUE) {
$informasi['message_display'] = 'Registration Successfully !';
$this->load->view('login_form', $informasi);
} else {
$informasi['message_display'] = 'Username exist already!';
$this->load->view('registration_form', $informasi);
}
}
}

// Check for consumer login course of
public perform user_login_process() {

$this->form_validation->set_rules('username', 'Username', 'trim|required|xss_clean');
$this->form_validation->set_rules('password', 'Password', 'trim|required|xss_clean');

if ($this->form_validation->run() == FALSE) {
if(isset($this->session->userdata['logged_in'])){
$this->load->view('admin_page');
}else{
$this->load->view('login_form');
}
} else {
$informasi = array(
'username' => $this->input->publish('username'),
'password' => $this->input->publish('password')
);
$end result = $this->login_database->login($informasi);
if ($end result == TRUE) {

$username = $this->input->publish('username');
$end result = $this->login_database->read_user_information($username);
if ($end result != false) {
$session_data = array(
'username' => $end result[0]->user_name,
'surel' => $end result[0]->user_email,
);
// Add consumer informasi in session
$this->session->set_userdata('logged_in', $session_data);
$this->load->view('admin_page');
}
} else {
$informasi = array(
'error_message' => 'Invalid Username or Password'
);
$this->load->view('login_form', $informasi);
}
}
}

// Logout from admin web page
public perform logout() {

// Removing session informasi
$sess_array = array(
'username' => ''
);
$this->session->unset_userdata('logged_in', $sess_array);
$informasi['message_display'] = 'Successfully Logout';
$this->load->view('login_form', $informasi);
}

}

?>

3. Membuat View

Langkah Selanjutnya adalah kita dapat membuat menunjukkan view login dengan Akun login_form.php File dapat dituliskan dengan menambahkan kode berikut

<html>
<?php
if (isset($this->session->userdata['logged_in'])) {

header("location: http://localhost/login/index.php/user_authentication/user_login_process");
}
?>
<head>
<title>Login Form</title>
<hyperlink rel="stylesheet" sort="textual content/css" href="<?php echo base_url(); ?>css/type.css">
<hyperlink href="http://fonts.googleapis.com/css?household=Source+Sans+Pro|Open+Sans+Condensed:300|Raleway" rel="stylesheet" sort="textual content/css">
</head>
<physique>
<?php
if (isset($logout_message)) {
echo "<div class="message">";
echo $logout_message;
echo "</div>";
}
?>
<?php
if (isset($message_display)) {
echo "<div class="message">";
echo $message_display;
echo "</div>";
}
?>
<div id="primary">
<div id="login">
<h2>Login Form</h2>
<hr/>
<?php echo form_open('user_authentication/user_login_process'); ?>
<?php
echo "<div class="error_msg">";
if (isset($error_message)) {
echo $error_message;
}
echo validation_errors();
echo "</div>";
?>
<menandai>UserName :</menandai>
<enter sort="textual content" identify="username" id="identify" placeholder="username"/><br /><br />
<menandai>Password :</menandai>
<enter sort="password" identify="password" id="password" placeholder="**********"/><br/><br />
<enter sort="submit" worth=" Login " identify="submit"/><br />
<a href="<?php echo base_url() ?>index.php/user_authentication/user_registration_show">To SignUp Click Here</a>
<?php echo form_close(); ?>
</div>
</div>
</physique>
</html>

Setelah membuat menunjukkan login, oleh karena itu kita dapat membuat menunjukkan registrasi dengan Akun registration_form.php dengan menambahkan kode berikut pada file

<html>
<?php
if (isset($this->session->userdata['logged_in'])) {
header("location: http://localhost/login/index.php/user_authentication/user_login_process");
}
?>
<head>
<title>Registration Form</title>
<hyperlink rel="stylesheet" sort="textual content/css" href="<?php echo base_url(); ?>css/type.css">
<hyperlink href="http://fonts.googleapis.com/css?household=Source+Sans+Pro|Open+Sans+Condensed:300|Raleway" rel="stylesheet" sort="textual content/css">
</head>
<physique>
<div id="primary">
<div id="login">
<h2>Registration Form</h2>
<hr/>
<?php
echo "<div class="error_msg">";
echo validation_errors();
echo "</div>";
echo form_open('user_authentication/new_user_registration');

echo form_label('Create Username : ');
echo"<br/>";
echo form_input('username');
echo "<div class="error_msg">";
if (isset($message_display)) {
echo $message_display;
}
echo "</div>";
echo"<br/>";
echo form_label('Email : ');
echo"<br/>";
$informasi = array(
'sort' => 'surel',
'identify' => 'email_value'
);
echo form_input($informasi);
echo"<br/>";
echo"<br/>";
echo form_label('Password : ');
echo"<br/>";
echo form_password('password');
echo"<br/>";
echo"<br/>";
echo form_submit('submit', 'Sign Up');
echo form_close();
?>
<a href="<?php echo base_url() ?> ">For Login Click Here</a>
</div>
</div>
</physique>
</html>

Kita telah membuat file menunjukkan untuk login dan juga registrasi, kedua ini kita dapat membuat menunjukkan admin dengan Akun admin_page.php dengan menambahkan kode berikut

<html>
<?php
if (isset($this->session->userdata['logged_in'])) {
$username = ($this->session->userdata['logged_in']['username']);
$surel = ($this->session->userdata['logged_in']['email']);
} else {
header("location: login");
}
?>
<head>
<title>Admin Page</title>
<hyperlink rel="stylesheet" sort="textual content/css" href="<?php echo base_url(); ?>css/type.css">
<hyperlink href="http://fonts.googleapis.com/css?household=Source+Sans+Pro|Open+Sans+Condensed:300|Raleway" rel="stylesheet" sort="textual content/css">
</head>
<physique>
<div id="profile">
<?php
echo "Hello <b id='welcome'><i>" . $username . "</i> !</b>";
echo "<br/>";
echo "<br/>";
echo "Welcome to Admin Page";
echo "<br/>";
echo "<br/>";
echo "Your Username is " . $username;
echo "<br/>";
echo "Your Email is " . $surel;
echo "<br/>";
?>
<b id="logout"><a href="logout">Logout</a></b>
</div>
<br/>
</physique>
</html>

4. Membuat Model

Saat ini kita pasti akan membuat sebuah desain dengan Akun login_database.php dengan menambahkan kode berikut

<?php

Class Login_Database extends CI_Model {

// Insert registration informasi in database
public perform registration_insert($informasi) {

// Query to verify whether or not username exist already or not
$situation = "user_name =" . "'" . $informasi['user_name'] . "'";
$this->db->choose('*');
$this->db->from('user_login');
$this->db->the place($situation);
$this->db->restrict(1);
$question = $this->db->get();
if ($query->num_rows() == 0) {

// Query to insert informasi in database
$this->db->insert('user_login', $informasi);
if ($this->db->affected_rows() > 0) {
return true;
}
} else {
return false;
}
}

// Read informasi utilizing username and password
public perform login($informasi) {

$situation = "user_name =" . "'" . $informasi['username'] . "' AND " . "user_password =" . "'" . $informasi['password'] . "'";
$this->db->choose('*');
$this->db->from('user_login');
$this->db->the place($situation);
$this->db->restrict(1);
$question = $this->db->get();

if ($query->num_rows() == 1) {
return true;
} else {
return false;
}
}

// Read informasi from database to point out informasi in admin web page
public perform read_user_information($username) {

$situation = "user_name =" . "'" . $username . "'";
$this->db->choose('*');
$this->db->from('user_login');
$this->db->the place($situation);
$this->db->restrict(1);
$question = $this->db->get();

if ($query->num_rows() == 1) {
return $query->end result();
} else {
return false;
}
}

}

?>

Dapat menambah kode CSS pada menunjukkan web site untuk memperindah menunjukkan web site

(*3*)#primary{
width:960px;
lingkup:50px auto;
font-family:raleway;
}

Lihat lebih banyak:  4 Cara Merubah IP Android agar Bisa Bebas Akses

span{
shade:crimson;
}

h2{
background-color: #FEFFED;
text-align:middle;
border-radius: 10px 10px 0 0;
lingkup: -10px -40px;
padding: 30px;
}

#login{

width:300px;
float: left;
border-radius: 10px;
font-family:raleway;
border: 2px strong #ccc;
padding: 10px 40px 25px;
margin-top: 70px;
}

enter[type=text],enter[type=password], enter[type=email]{
width:99.5%;
padding: 10px;
margin-top: 8px;
border: 1px strong #ccc;
padding-left: 5px;
font-size: 16px;
font-family:raleway;
}

enter[type=submit]{
width: 100%;
background-color:#FFBC00;
shade: white;
border: 2px strong #FFCB00;
padding: 10px;
font-size:20px;
cursor:pointer;
border-radius: 5px;
margin-bottom: 15px;
}

#profile{
padding:50px;
border:1px dashed gray;
font-size:20px;
background-color:#DCE6F7;
}

#logout{
float:proper;
padding:5px;
border:dashed 1px grey;
margin-top: -168px;
}

a{
text-decoration:none;
shade: cornflowerblue;
}

i{
shade: cornflowerblue;
}

.error_msg{
shade:crimson;
font-size: 16px;
}

.message{
place: absolute;
font-weight: daring;
font-size: 28px;
shade: #6495ED;
left: 262px;
width: 500px;
text-align: middle;
}

Setelah penampilan kita dapat mengakui hasil akhir yang telah kita kembangkan dengan menuliskan menangani localhost/login pada browser. Ketika browser mendapatkan url di terkemuka oleh karena itu pasti akan mengembangkan taman login. Halaman ini berisi segmen login dan juga hyperlink pendaftaran.

Seluruh prosedur meliputi

  1. Proses Registrasi.
  2. Proses Login.

Proses Registrasi atau bahkan Sign Up

Ketika Anda mengklik hyperlink signup, hyperlink tersebut pasti akan panduan Anda langsung ke SignUp.php dan juga menampilkan formulir pendaftaran.

Setelah mengisi semua masukan enter ketika Anda mengklik beralih Pasokan, semua informasi berpindah langsung ke fitur new_user_registration () pada Controller. Fungsi ini memeriksa validasi awalnya untuk setiap masukan.

Jika informasi Anda tidak terisi atau bahkan tidak legitimate oleh karena itu pasti akan hasilkan informasi kelalaian tetapi, jika semua subject enter mendapatkan informasi yang cara yang benar oleh karena itu miliknya sendiri pasti akan menghubungkan Anda langsung ke database.

Sebelum memasukkan informasi langsung ke database, terlebih dahulu dilakukan pengecekan username di database. Jika username yang disediakan sekarang dapat diakses di database, pasti akan menampilkan informasi error username exist already! Pesan pasti akan ditampilkan tetapi jika Akun pelanggan tidak dapat diakses sangat database oleh karena itu miliknya sendiri pasti akan memasukkan semua info sangat database dan juga menampilkan informasi SignUp Successfullly!.

Lihat lebih banyak:  Tutorial Menambahkan Kalendar pada Website

Proses Sign In

Setelah mendaftar, Anda dapat masuk ke dalam dengan memberikan Akun pelanggan dan juga frase sandi yang legitimate. Jika Akun pelanggan atau bahkan frase sandi yang disediakan tidak legitimate oleh karena itu informasi kelalaian pasti akan ditampilkan.

Sekarang mari kita pemandangan seluruh keseluruhan teknik Sign In. Saat Anda memasukkan Akun pelanggan dan juga frase sandi, nilai-nilai enter tersebut dibawa langsung ke fitur user_login_process () di Controller di mana validasi untuk setiap masukan dicentang.

Jika semua enter yang disediakan legitimate oleh karena itu fitur user_login_process () mencocokkan username dan juga password yang disediakan dengan informasi yang tersimpan di database.

Jika kecocokan tidak terletak oleh karena itu Anda pasti akan diarahkan langsung ke taman login dan juga informasi kelalaian pasti akan ditampilkan. Namun jika terletak kecocokan pada database oleh karena itu pasti akan dibuat sebuah session dan juga informasi pelanggan pasti akan dimasukkan langsung ke sangat informasi pengobatan.

Sekarang, informasi ini dikirimkan langsung ke taman admin di mana semua info beserta opsi logout pasti akan ditampilkan. Ketika Anda pasti akan mengklik logout oleh karena itu fitur logout () pasti akan dipanggil dan juga di mana informasi pengobatan pasti akan dihancurkan atau bahkan dihapus. Setelah ini, Anda pasti akan diarahkan langsung ke taman login untuk login baru saja.

Kesimpulan

Terima kasih telah analisis postingan lengkapnya. Semoga Anda menikmati analisis posting blog weblog ini dan juga mendapatkan konsepnya. Anda dapat membagikan pandangan Anda di daerah yang disampaikan dibawah ini dan juga menghubungi perusahaan kita.

Anda sederhana menonton: Cara Membuat Login dengan Session pada CodeIgniter 3

Sumber: https://taylorswift10years.com

Kategori: Teknologi

Leave a Reply

Your email address will not be published.