Login Logout Register Menggunakan Session dengan PHP+MySQL


Disebagian forum diskusi dan grup facebook saya membaca banyak pertanyaan mengenai Login Logout Register menggunakan Session dengan password yang di enkripsi. Karena itu saya tertarik untuk menulis artikel tentang topik tersebut.


Berikut saya berikan contoh Code / Script untuk Login Logout dan Register.

Buat database baru, kemudian tambahkan table user.

user
CREATE TABLE IF NOT EXISTS `user` (
`id_user` int(11) NOT NULL,
  `nama` varchar(20) NOT NULL,
  `username` varchar(20) NOT NULL,
  `password` text NOT NULL
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=latin1;

Buat file konfigurasi database dan session. Sesuaikan koneksi database dengan milik anda.

config.php
<?php
// memulai pencatatan session
session_start();

// koneksi database
mysql_connect('localhost','root','');
mysql_select_db('myreport');

// yang akan dijadikan session adalah id_user
if(isset($_SESSION['id_user'])) {
$id_user = $_SESSION['id_user'];
} else {
$id_user = 0;
}

?>
Perhatikan yang berwana merah, pada kode diatas saya akan menjadikan id_user sebagai session. Kenapa id_user yang dijadikan session? Karena id_user ini adalah primary key dari data user. Jika anda sudah menjadikan id_user sebagai session anda tidak perlu lagi menambahkan session lain, misal untuk session level (jika login multi-user).


Kemudian buat file register.php

register.php
<?php
// ambil konfigurasi database dan session
include('config.php');

// cek apakah user sudah login atau belum
// jika sudah login nilainya bukan 0 tetapi id_user
// direct ke halaman index.php
if($id_user<>0) { header('location:index.php'); }

// jika tombol register diklik
if(isset($_POST['btnregister'])) {
$txtnama = $_POST['txtnama'];
$txtuser = $_POST['txtuser'];
// password di enkripsi dengan password_hash()
$txtpass = password_hash($_POST['txtpass'],PASSWORD_BCRYPT);
$user = mysql_query("SELECT * FROM user WHERE username='$txtuser'");
// apakah username yang dimasukan sudah ada dalam database ?
$cekuser = mysql_num_rows($user);
if($cekuser>0) {
// jika sudah ada username yang sama maka register ditolak
echo "<script>alert('Username ini sudah terdaftar!');</script>";
} else {
// jika belum ada username yang sama maka register diterima
// kemudian masukan kedalam database
$insert = mysql_query("INSERT INTO user (nama,username,password) VALUES ('$txtnama','$txtuser','$txtpass')");
if($insert) {
echo "<script>alert('Daftar berhasil! Silahkan login.');</script>";
} else {
echo "<script>alert('Daftar gagal! Silahkan ulangi.');</script>";
}
}
}
echo "
<!DOCTYPE html>
<html>
<head>
<title>Register</title>
</head>
<body>
<h3>REGISTER</h3>
<form action='' method='post'>
<label>Nama</label><br/>
<input type='text' name='txtnama' required='true'/><br/>
<label>Username</label><br/>
<input type='text' name='txtuser' required='true'/><br/>
<label>Password</label><br/>
<input type='password' name='txtpass' required='true'/><br/>
<br/>
<button type='submit' name='btnregister'>Register</button><br/>
</form>
<br/>
<a href='login.php'>Login</a>
</body>
</html>
";
?>
Perhatikan yang berwarna merah, pada kode diatas saya menggunakan password_hash() untuk meng-enkripsi passwordnya. Saya sudah tidak menggunakan MD5 lagi untuk meng-enkripsi password karena beberapa alasan. 


Baca: MD5 itu Berbahaya, Titik!

Teknik pada register ini adalah meng-insert data kedalam database seperti anda menambahkan data lainnya. Hanya saja sebelum di insert anda harus meng-enkripsi password terlebih dahulu.


Setelah register, user diperbolehkan untuk login. Silahkan buat file login.php

login.php
<?php
// ambil konfigurasi database dan session
include('config.php');

// cek apakah user sudah login atau belum
// jika sudah login nilainya bukan 0 tetapi id_user
// direct ke halaman index.php
if($id_user<>0) { header('location:index.php'); }

// jika tombol login diklik
if(isset($_POST['btnlogin'])) {
$txtuser = $_POST['txtuser'];
$txtpass = $_POST['txtpass'];
$user = mysql_query("SELECT * FROM user WHERE username='$txtuser'");
// apakah username yang dimasukan sudah ada dalam database ?
$cekuser = mysql_num_rows($user);
if($cekuser==0) {
// jika username belum ada dalam database
echo "<script>alert('Anda belum terdaftar!');</script>";
} else {
// jika username sudah ada dalam database
$getuser = mysql_fetch_array($user);
// menyocokan password yang di input dengan password di database
if(!password_verify($txtpass,$getuser['password'])) {
// jika password tidak cocok
echo "<script>alert('Password salah!');</script>";
} else {
// jika password cocok
// id_user dijadikan session
$_SESSION['id_user'] = $getuser['id_user'];
// direct ke halaman index.php
header('location:index.php');
}
}
}
echo "
<!DOCTYPE html>
<html>
<head>
<title>Login</title>
</head>
<body>
<h3>LOGIN</h3>
<form action='' method='post'>
<label>Username</label><br/>
<input type='text' name='txtuser' required='true'/><br/>
<label>Password</label><br/>
<input type='password' name='txtpass' required='true'/><br/>
<br/>
<button type='submit' name='btnlogin'>Login</button><br/>
</form>
<br/>
<a href='register.php'>Register</a>
</body>
</html>
";
?>
Perhatikan yang berwarna merah, fungsi password_verify() adalah untuk mencocokan password_hash() didalam database yang ter-enkripsi dengan password yang di input oleh user.
Yang berwarna biru itu menjadikan id_user sebagai session jika telah melewati beberapa kriteria.


Buat halaman index.php

index.php
<?php
// ambil konfigurasi database dan session
include('config.php');

// cek apakah user sudah login atau belum
// jika belum login nilainya adalah 0
// direct ke halaman login.php
if($id_user==0) { header('location:login.php'); }

// ambil data user sesuai id_user dari session
$user = mysql_fetch_array(mysql_query("SELECT * FROM user WHERE id_user='$id_user'"));

echo "
<!DOCTYPE html>
<html>
<head>
<title>Home</title>
</head>
<body>
<h3>HOME</h3>
Anda login sebagai <b>$user[nama]</b> dengan username <b>$user[username]</b>.<br/>
<br/>
<a href='logout.php'>Logout</a>
</body>
</html>
";
?>
Pada kode diatas menampilkan nama dan username dari user yang telah login.


Buat file logout.php untuk menghapus session.

logout.php
<?php
// ambil konfigurasi database dan session
include('config.php');

// hapus session saat ini
unset($_SESSION['id_user']);

// direct ke halaman login.php
header('location:login.php');
?>
Yang berwarna merah adalah fungsi untuk menghapus session id_user tadi.


Untuk demo dan download script menyusul jika ada permintaan.
Silahkan berkomentar.
Terimakasih.

Cara Mendapatkan Uang Dari Internet Secara Otomatis Tanpa Blog Tanpa Website


Mungkin kebanyakan dari kita akan tergiur ingin memulai bisnis onlinenya sendiri, padahal mereka belum tahu bagaimana cara mendapatkan uang dari internet. Jika Anda adalah seorang internet marketer (pemasar online) yang ahli, mungkin untuk menghasilkan uang dari internet itu bukanlah sesuatu yang sulit. Namun, beda ceritanya bila Anda masih pemula (newbie) di dunia online marketing. Jangankan mendapatkan uang, caranya saja masih bingung.

Banyak sekali cara untuk mendapatkan uang dari internet, bisa anda baca disini. Tapi yang kita butuhkan adalah cara yang mudah dan yang pasti modal sedikit atau mungkin bahkan tanpa modal. Pada link yang saya berikan diatas hampir semua harus menggunakan Blog atau Website, yang berarti anda harus selalu online pada Website tersebut.

Nah, yang akan saya bahas disini adalah cara mendapatkan uang dari internet tanpa blog, tanpa website, tanpa harus membuat artikel, tanpa harus selalu online. Yang dibutuhkan hanya koneksi internet dan social media saja. Mau tahu?

Caranya adalah dengan membagikan artikel dari website lain ke social media kita, TAPI SECARA OTOMATIS. Agar kita tidak perlu setiap saat mencari artikel kemudian membagikannya satu per-satu. Dan setiap artikel yang dibaca oleh orang lain akan menghasilkan uang bagi kita. Tertarik? Lanjutkan!


1. Social Media

Silahkan anda siapkan social media seperti Facebook, Twitter dan Google+. Khusus untuk Facebook anda harus membuat halaman Fanspage.


2. Dlvr.it

Dlvr.it ini adalah sebuah layanan untuk membagikan feed/umpan sebuah blog atau website ke beberapa social media secara otomatis. Untuk menggunakannya silahkan anda buat akun di dlvr.it.


Agar lebih cepat, masuklah dengan akun Social anda pada halaman tersebut.  Sebagai contoh saya menggunakan akun Facebook, klik icon Facebook dan izinkan semua akses yang ditanyakan Facebook.


Setelah berhasil, anda akan masuk pada halaman ini.


Pilih tab Social untuk menambahkan akun social anda. Klik tombol Connect a Social hingga seperti ini.


Kembali pada tab Automate. Klik tombol Add a Route.
Pada bagian ini anda harus mencari RSS Feed sebuah blog/website. Disarankan untuk menggunakan RSS Feed dari sebuah blog/website yang setiap hari mempunyai update artikel yang menarik. Misalkan saya menggunakan RSS Feed dari blog ini, yaitu https://siunus.blogspot.com/feeds/posts/default/



Pilih Social Media yang telah anda tambahkan sebelumnya dan klik tombol Save.


Silahkan tambahkan beberapa RSS Feed untuk dibagikan ke Social Media anda.



Atur jadwal posting per-hari dan properti lainnya. Disarankan untuk tidak mengatur jadwal posting per-hari terlalu banyak, karena akan membingunkan dan membuat risih follower social media anda.

Sampai disini anda sudah berhasil membagikan artikel ke social media secara otomatis, tetapi belum bisa mendapatkan keuntungan.


3. Shorte.st

Shorte.st adalah web penyedia jasa Link Shortener (Pemendek alamat link) dengan bayaran untuk setiap link yang mendapatkan klik. Silahkan anda daftar dan buat akun di shorte.st


  • Buka shorte.st
  • Daftarlah dengan mengklik menu Join.
  • Isi semua informasi yang dibutuhkan dan klik register.

Setelah berhasil medaftar dan login. Sorot menu More Tools dan pilih dlvr.it integration


Salin bagian URL yang saya blok.


Kembali ke dlvr.it. Pada tab Social pilih Short Links.


Klik Add a Shortener dan pilih 3rd Party Shortener, dan isi seperti ini.
Pada bagian Shortener Endpoint isi dengan URL yang disalin tadi. Aktifkan default dan klik tombol Save.


Selesai.

Setelah selesai, artikel dari rss yang anda tambahkan akan secara otomatis dibagikan ke social media anda. Dan setiap orang yang membukanya akan melewati link shortener anda. Anda tidak perlu mempunyai blog/website. Anda tidak perlu membuat artikel setiap hari. Anda tidak perlu membuka internet setiap saat untuk membagikan artikel. Keuntungan selalu mengalir pada akun shorte.st anda. Anda hanya tinggal fokus untuk memperbanyak follower social media anda. Anda dapat withdraw atau mengambil uangnya setelah lebih dari $5.

Lihat: How to withdraw in shorte.st


Contoh:

Ini adalah contoh berita yang dibagikan secara otomatis ke social media saya, alamatnya URL-nya sudah dipersingkat menjadi sh.st/D...., dan setiap kliknya akan menghasilkan bayaran.




Semoga Berhasil.
Terimakasih.

Sistem Informasi Akademik (SIAKAD) Full Fitur, Full Source Code, Gratis + Video Tutorial




Fitur:

Master Data
  1. Gedung
  2. Ruangan
  3. Prodi
  4. Konsentrasi
  5. Dosen
  6. Kelompok matakuliah
  7. Grade nilai
  8. Tahun angkatan
Mahasiswa

Akademik
  1. Tahun akademik
  2. Matakuliah
  3. Jadwal kuliah
  4. Registrasi
  5. Kartu rencana studi
  6. Kartu hasil studi
Keuangan
  1. Form pembayaran
  2. Jenis pembayaran
  3. Biaya kuliah
  4. Laporan keuangan
Pengguna sistem


Catatan:
  • Menggunakan Framework Codeigniter 2.2
  • Database MySQL
  • Template Bootstrap
  • Multi-Level User

Custom ROM MIUI 8 untuk Lenovo A6000

MIUI 8 ini hadir dengan banyak perubahan yang melebihi harapan Anda. MIUI 8 memiliki perubahan besar dengan tampilan yang lebih berwarna akan memberikan pengalaman yang lebih menyenangkan, juga terdapat banyak fitur baru yang menarik dari MIUI.
Custom ROM ini sudah bisa dicoba meski masih dalam versi Beta, tetapi tidak menjamin semua fiturnya berjalan dengan lancar.






Cara Install:

Untuk cara installnya sama dengan install MIUI 7.

Baca: INSTALL MIUI 7 GLOBAL ROM DI LENOVO A6000


Catatan:
  • 32-bit
  • Support A6000 plus
  • Support A6010
  • Download yang terbaru. Paling atas adalah yang terbaru.


Thanks for 70K+ Visitors



Terimakasih untuk 70 ribu lebih pengunjung!!!

Sebagai tanda terimakasih dan untuk memperbanyak informasi yang ada di blog ini, maka kami membuka lowongan bagi siapa saja yang berminat untuk bergabung dan menjadi penulis di blog ini.

Persyaratan:
  • Mengerti dan tanggap terhadap perkembangan teknologi.
  • Berpengalaman menggunakan Internet dan Blog.
  • Mampu menulis dengan Bahasa Indonesia yang baik dan benar.
  • Mengerti tentang HTML (Hypertext Markup Language)
  • Mempunyai akun Gmail.

Keterangan:
  • Tidak akan dibayar. Tetapi boleh menggunakan akun adfly, shortest. atau alat pemendek url lainnya yang menghasilkan fee kepada penulis.
  • Tidak boleh menyalin artikel orang lain seutuhnya kecuali menyertakan link sumber dengan jelas. 
  • Artikel yang ditulis adalah tentang Teknologi meliputi Komputer, Smartphone, Software, Internet, Pemrograman, dll. (Lihat kategori yang sudah tersedia)
  • Diusahakan artikel yang ditulis adalah ide/pemikiran sendiri.
  • Tidak dipungut biaya apapun. GRATIS!
  • Kuota terbatas.

Jika tertarik silahkan hubungi kami di facebook.
Langsung chat dengan Takehito Yunus

Download Tutorial Dasar Laravel (43 Halaman) [pdf]

Download Tutorial Dasar Laravel (43 Halaman) [pdf]

Download Tutorial Dasar Laravel (43 Halaman) [pdf]

E-book ini ditulis oleh Teten Nugraha terdiri dari 43 halaman dalam format pdf.

Apa yang dibahas didalam e-book Tutorial Dasar Laravel ini?
  • Berkenalan dengan Laravel
  • Apa itu Laravel ?
  • Kenapa Memakai Laravel ?
  • Memulai Laravel (Instalasi dan Konfigurasi)
  • Requirement
  • Install Package Laravel
  • Struktur Projek Laravel
  • Mengenal Dasar Routing
  • Routing Dasar
  • Routing Berparameter
  • Mengenal MVC (Model-View-Controller)
  • Mengenal Blade Template Laravel
  • Form dan HTML
  • Schema Builder
  • Migrations
  • Seeding
  • Eloquent
  • dll.

DOWNLOAD