Setelah selesai mengerjakan tugas pemrograman web dari dosen akhirnya gw smptin nulis nih tutorial tentang membuat form login di ci . Cara – cara ini adalh cara yg aq pecahin sendiri setelah kesana kemari di mbah gugle cari referensi dan sedikit pemahaman serta modifikasi tentang membuat form login dengan codeigniter , langsung aj gw bhas langkah – langkah pembuatannya seperti berikut :
Langkah #1 buat database ‘login’ dengan tabel ‘user’ syntaxnya kayk gini nih
CREATE TABLE IF NOT EXISTS `user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(20) NOT NULL, `password` varchar(32) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;
Langkah #2 atur koneksi database ci di config database
$db['default']['hostname'] = 'localhost'; $db['default']['username'] = 'root'; $db['default']['password'] = ''; $db['default']['database'] = '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; [ /sourcecode ] <strong>Langkah #3 atur autoload database pada config autoload berikut source code tepatnya</strong> [sourcecode languange="php"] $autoload['libraries'] = array('database', 'session', 'form_validation', 'table');
Langkah #4 buat model untuk koneksi ke database login berikut namain modelnya dgan modelakun.php
<!--?php class ModelAkun extends CI_Model { function __construct() { parent::__construct(); } function cekUserPass($username, $password) { $this--->db->where('username', $username); $this->db->where('password', $password); $query = $this->db->get('user'); return $query->num_rows() > 0; } function isLogin() { return $this->session->userdata('username'); } } ?>
Langkah #5 buat view untuk tampilannya
- view pertama buat view namanya login_page.php
.:: SILAB ::. <script type="text/javascript" language="javascript" src="<?php">// <![CDATA[ "> // ]]></script> " /> " /> <div > <!--?php echo "<br ?--></pre> <form class="niceform" action="akun/login" method="post">"; echo " <fieldset><table >"; $username = array( 'name' => 'username', 'size' => '33' ); $password = array( 'name' => 'password', 'size' => '33' ); echo " <td > <div><label for="username">Username:</label></div> ".form_input($username)."<label for="password">Password:</label>".form_password($password)." ".form_submit('','Login')." ".form_reset('','Clear')." "; ?></fieldset> <!--?php echo form_close();?--> </form> <pre>
- view kedua buat view namanya redirect.php
Portal Labkom FMIPA UNS rel="stylesheet" type="text/css" /> </pre> <div id="container"> <h1>Selamat datang</h1> <div id="body"></div> Page rendered in <strong>{elapsed_time}</strong> seconds</div> <pre> <!--?php?-->
- View ketiga buat dengan nama Berhasil.php
Portal Labkom FMIPA UNS rel="stylesheet" type="text/css" /> </pre> <div id="container"> <h1>Anda Berhasil Login</h1> <div id="body"></div> </div> <pre>
Langkah #6 buat controllernya
- buat controller dengan nama home.php
<!--?php class Home extends CI_Controller { function __construct() { parent::__construct(); $this--->load->model('ModelAkun'); } function index() { if ($this->session->userdata('username') == false) redirect('login_page'); $this->load->view('Berhasil'); } }
- buat controller dengan nama akun.php
<!--?php class Akun extends CI_Controller { function __construct() { parent::__construct(); $this--->load->model('ModelAkun'); } function login() { $isi = false; $this->form_validation->set_rules('username', 'Username', 'required'); $this->form_validation->set_rules('password', 'Password', 'required'); if ($this->form_validation->run()) { $username = $this->input->post('username'); $password = md5($this->input->post('password')); if ($this->ModelAkun->cekUserPass($username, $password)) { $config = array( 'username' => $username, 'login' => true ); $this->session->set_userdata($config); $throw['pesan'] = 'Login sukses...'; $throw['redirect'] = 'home'; $isi = true; } else { $throw['pesan'] = 'Username / Password salah... Silahkan coba lagi...'; $throw['redirect'] = 'login'; $isi = true; } } else { $throw['pesan'] = validation_errors(); $throw['redirect'] = 'login'; $isi = true; } $this->load->view('redirect', $throw); if (!$isi) { redirect('login'); } } function logout() { $this->session->sess_destroy(); redirect('login'); } }
- buat controller dengan nama login.php
<!--?php if (!defined('BASEPATH')) exit('No direct script access allowed'); class Login extends CI_Controller { public function __construct() { parent::__construct(); $this--->load->model('ModelAkun'); } public function index() { if ($this->session->userdata('username') == true) redirect('home'); $this->load->view('login_page'); } }
Semua controller semua view semua model udah dibuat tinggal dijalanin dehdaripada ribet bisa didownload source codenya disini
semoga berhasil tugas ku karna bantuan coding ini
BalasHapus