Persiapan Login dan Register PHP

Hai semuanya!, pada kesempatan kali ini saya akan membagikan tutorial untuk membuat sistem login dan register pada PHP. Setidaknya Anda telah belajar CRUD PHP terlebih dahulu, baik menggunakan MySQLi Procedural, OOP, atau PHP PHP Data Objects. Akan tetapi saya akan menggunakan PHP PDO karena ada beberapa alasan utama yaitu sangat mudah digunakan untuk pindah ke Database Management System lain seperti SQLite, Postgresql, Redis, Informix, dan masih banyak lagi. Sedangkan untuk MySQLi hanya DBMS MySQL saja, bila Anda ingin pindah DBMS, Anda akan terpaksa mengubah semua skrip PHP Anda.

Daftar isi:

Baca juga:

Membuat nama basis data

Silakan jalankan skrip Structured Query Language berikut ini pada menu SQL di PHPMyAdmin Anda, ini akan membuat nama basis data baru yaitu tutorial_loginregister. Anda bebas untuk mengubah nama basis data sesuai keinginan Anda. Berikut skrip SQL-Nya:

CREATE DATABASE tutorial_loginregister;

Membuat nama basis data

Struktur tabel users

Setelah membuat nama basis data silakan untuk menjalankan skrip ini juga, tetapi masuk dahulu ke dalam basis data tutorial_loginregister. Kemudian jalankan perintah SQL berikut ini:

CREATE TABLE users (
  id int(11) PRIMARY KEY AUTO_INCREMENT,
  username varchar(30),
  password varchar(255),
  role enum('admin','member','','') DEFAULT 'member'
);

Struktur tabel users

Catatan: Saya menambahkan tipe enum untuk membuat multiuser yaitu admin dan member.

Masukan data ke tabel users

Skrip ini akan menambahkan data pada tabel users, hal ini saya lakukan sebagai cara awal untuk menambahkan data secara langsung ke tabel basis data Anda. Biasanya setelah menambah tabel secara otomatis akan masuk ke tabel yang telah dibuat, salin skrip SQL berikut dan jalankan.

INSERT INTO users (username, password, role) VALUES
('admin', '$2y$10$PiNQSFA4C4VXrEVscsHls.uxkPx/dJ8I99gjEClrLaZvEmp0v3Jk2', 'admin'),
('member', '$2y$10$PiNQSFA4C4VXrEVscsHls.uxkPx/dJ8I99gjEClrLaZvEmp0v3Jk2', 'member');

Masukan data ke tabel users

Catatan: Saya telah membuat kata sandi (password) yang telah di hashing terlebih dahulu, agar nanti Anda tidak perlu mengubahnya langsung pada basis data Anda. Jika Anda sudah masuk ke fitur login dan akan membahas password_verify().