Haii sahabat blogger, jumpa lagi dengan ane M.Syaiful Fuad :D di artikel sebelumnya kita membahas sedikit tentang php di codeigniter, pada kali ini saya mau membahas cara membuat login pada codeigniter. Oke langsung sajaa
Bahan bahan yang dibutuhkan adalah :
- Controller = login.php
- View = v_login.php
- View = v_sukses.php
- Model = m_login.php
Membuat database
di sini saya membuat sebuah database dan tabel yang berisi username dan password . database yang saya buat adalah ck_login . dengan tabel users .

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
-- phpMyAdmin SQL Dump
-- version 3.4.10.1deb1
-- http://www.phpmyadmin.net
--
-- Host: localhost
-- Generation Time: Dec 19, 2014 at 10:40 PM
-- Server version: 5.5.40
-- PHP Version: 5.3.10-1ubuntu3.15
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
--
-- Database: `ck_login`
--
-- --------------------------------------------------------
--
-- Table structure for table `users`
--
CREATE TABLE IF NOT EXISTS `users` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(20) NOT NULL,
`password` varchar(20) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;
--
-- Dumping data for table `users`
--
INSERT INTO `users` (`id`, `username`, `password`) VALUES
(1, 'marley', 'marley123');
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
|
selesai membuat database dan tabel .
konfigurasi database
tahap ini sudah kita bahas pada tutorial sebelum nya di carikode.com .
klik di sini untuk melihat tutorial cara configurasi database di codeigniter .
application/config/database.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'root';
$db['default']['password'] = 'xxx';
$db['default']['database'] = 'ck_login';
$db['default']['dbdriver'] = 'mysql';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = TRUE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = '';
$db['default']['char_set'] = 'utf8';
$db['default']['dbcollat'] = 'utf8_general_ci';
$db['default']['swap_pre'] = '';
$db['default']['autoinit'] = TRUE;
$db['default']['stricton'] = FALSE;
|
Membuat form login
hal pertama yg harus kita lakukan untuk membuat login dengan codeigniter adalah membuat form login nya terlebih dulu
buat sebuah view v_login.php
application/views/v_login.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
|
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Welcome to CodeIgniter</title>
<style type="text/css">
::selection{ background-color: #E13300; color: white; }
::moz-selection{ background-color: #E13300; color: white; }
::webkit-selection{ background-color: #E13300; color: white; }
body {
background-color: #fff;
font: 13px/20px normal Helvetica, Arial, sans-serif;
color: #4F5155;
}
h1 {
color: #444;
background-color: transparent;
border-bottom: 1px solid #D0D0D0;
font-size: 19px;
font-weight: normal;
margin: 0 0 14px 0;
padding: 14px 15px 10px 15px;
}
#body{
margin: 0 15px 0 15px;
}
p.footer{
text-align: right;
font-size: 11px;
border-top: 1px solid #D0D0D0;
line-height: 32px;
padding: 0 10px 0 10px;
margin: 20px 0 0 0;
}
#container{
margin: 100px auto;
width: 310px;
border: 1px solid #D0D0D0;
-webkit-box-shadow: 0 0 8px #D0D0D0;
}
</style>
</head>
<body>
<div id="container">
<h1>CARIKODE LOGIN</h1>
<div id="body">
<?php echo form_open('login/aksi') ?>
<table>
<tr>
<td>Username</td><td><input type="text" name="uname"></td>
</tr>
<tr>
<td>Password</td><td><input type="text" name="pass"></td>
</tr>
<tr>
<td></td><td><input type="submit" value="Login"></td>
</tr>
</table>
</form>
</div>
<p class="footer">TUTORIAL CODEIGNITER LOGIN CARIKODE</p>
</div>
</body>
</html>
|
bisa teman-teman perhatikan pada form saya buat .
1
2
3
4
5
6
7
8
9
10
11
12
13
|
<?php echo form_open('login/aksi') ?>
<table>
<tr>
<td>Username</td><td><input type="text" name="uname"></td>
</tr>
<tr>
<td>Password</td><td><input type="text" name="pass"></td>
</tr>
<tr>
<td></td><td><input type="submit" value="Login"></td>
</tr>
</table>
</form>
|
saya menggunakan fungsi form di CI untuk membuat form login nya . dan action nya menuju ke class login dan fungsi aksi saat form ini di submit.
|
|
<?php echo form_open('login/aksi') ?>
|
Menampilkan form login
sekarang kita akan menampilkan form login yang sudah kita buat . cara nya buat sebuah controller login.php
kemudian buat fungsi __construct() dan fungsi index() .
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Login extends CI_Controller {
function __construct(){
parent::__construct();
$this->load->helper(array('form','url'));
$this->load->model('m_login');
$this->load->library('session');
}
function index(){
$this->load->view('v_login');
}
}
|
pada fungsi __construct kita membuka helper form dan url .
|
|
$this->load->helper(array('form','url'));
|
dan membuka model m_login.php . model m_login.php akan kita buat sebentar lagi . dan juga membuka library session . karena kita akan menggunakan fungsi session saat membuat login .
|
|
$this->load->model('m_login');
$this->load->library('session');
|
dan pada fungsi index kita menampilkan view v_login.php
|
|
$this->load->view('v_login');
|
sekarang coba kita jalankan pada browser. apakah kita sudah berhasil menampilkan view v_login atau belum .
http://localhost/LOGIN_CI/index.php/login
silahkan teman-teman sesuaikan .
sekarang kita sudah berhasil menampilkan halaman login nya. selanjut nya ngapain ? bengong dulu barang 10 menit

hahahaha
lanjut lanjut … ntar becandanya

Membuat validasi login
buat sebuah fungsi aksi dalam class login .
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
function aksi(){
$data=array(
'username'=>$this->input->post('uname'),
'password'=>$this->input->post('pass')
);
$cek=$this->m_login->m_aksi($data);
if($cek == 1){
$x=$this->session->set_userdata($data);
redirect('login/sukses');
}else{
echo "login gagal";
}
}
|
untuk penjelasan dari fungsi ini pertama-tama kita menangkap data yang di inputkan pada form dan memasukkan nya kedalam variabel array $data .
|
|
$data=array(
'username'=>$this->input->post('uname'),
'password'=>$this->input->post('pass')
);
|
kemudian melakukan pengecekan dengan memanggil fungsi model m_aksi yang ada pada class model m_login .dengan mengisi parameter nya dengan data yg ada dalam variabel $data , dengan kata lain kita mengirimkan data username dan password yang di ketik dan submit pada form login yg sudah kita buat .
|
|
$cek=$this->m_login->m_aksi($data);
|
kita mengirimkan data username dan password ke model m_login dan fungsi m_aksi adalah untuk mendapatkan atau menyocokkan data username dan password yang di input dengan data username dan password yang ada di database .
dan buat percabangan untuk mengecek kevalitan username password. jika variabel cek == 1 atau bernilai true maka buat session dengan data yang ada dalam variabel data tadi . dan alihkan halaman ke halaman sukses yang terletask di fungsi sukses di dalam class login yang akan kita buat sebentar lagi .
|
|
$this->session->set_userdata($data);
redirect('login/sukses');
|
jika tidak tampilkan pesan bahwa login gagal
selanjut nya kita akan membuat model untuk query login , yang akan kita lanjutkan di tutorial membuat login dengan codeigniter PART 2 .
Komentar
Posting Komentar