Sekarang kita akan membuat sebuah form login dan pendaftaraan dengan menggunakan PHP dan MySQL. Nah, kalian yang mungkin pertama kali belajar membuat web santai saja, disini anbi bakal bahas langkah per langkah.
Persiapan
Nah apa saja yang perlu kita persiapkan nih? Berikut ini yang perlu kalian persiapan :
Visual Studio Code
Buat apa Visual Studio Code? VS Code [Visual Studio Code] sebuah teks editor ringan dan handal yang dibuat oleh Microsoft untuk sistem operasi multiplatform, artinya tersedia juga untuk versi Linux, Mac, dan Windows.
Download Disini
Kalau selesai download, waktu installasi itu option dibawah dicentang semua yaa, supaya mempermudah kita dalam mengakses Visual Studio Code.
XAMPP
Lalu apa itu XAMPP? XAMPP merupakan paket alat untuk menjalankan web server dan database di localhost komputer. Itu artinya kalau kalian sudah punya website online, XAMPP membantumu membuat versi offline dari website tersebut.
Download Disini
Setelah selesai menginstall jangan lupa untuk mengaktifkan server Apache dan database MySQL pada XAMPP terlebih dahulu.
Buat Struktur Folder
Setelah selesai menginstall kedua aplikasi tersebut, mari kita lanjut membuat struktur folder untuk web ini.
Sekarang arahkan ke folder htdocs dan buat folder baru bernama login-signup caranya :
- Akses pada C:\xampp\htdocs
- Buat disana buat folder bernama login-signup.Folder login-signup
Lalu didalam folder login-signup kita buat file PHP bernama
index.php
serta buat juga file stylesheet css bernamastyle.css
dan juga folder lagi bernama pages.Didalam folder pages buat file bernama
login.php
dandaftar.php
.Coba buka folder login-signup dengan menggunakan Visual Studio Code. Caranya hanya dengan klik kanan dan pilih “Open With Code”.
Penjelasan Struktur Kode
Jika kalian membuat folder beserta filenya dengan baik, hasilnya akan seperti ini :
Folder pages berisi file
login.php
dandaftar.php
.login.php
, file ini nantinya akan berisi tampilan form login, dengan input username dan password.daftar.php
, file ini nantinya akan berisi tampilan form daftar dengan input username , email dan password.
index.php
, file ini akan kita isi dengan kode PHP dimana ia akan menampilkan hasilPOST
pada halaman login dan daftar.style.css
, file ini akan menampung kode stylesheet untuk menghias web kita dengan CSS agar lebih menarik.
Form Login
Setelah membuat struktur folder dengan baik, mari kita membuat halaman form login terlebih dahulu. Kode yang kita buat akan disimpan di login.php, dan kode lengkap nya seperti ini :
Login
Login
Username
Password
Log In
Belum punya akun?
Daftar di sini
Coba kita lihat hasilnya, dengan mengakses link berikut //localhost/login-signup/pages/login.php
“Sebentar, Kenapa linknya aksesnya seperti itu?"
Nih hasilnya 😄
Penjelasan Garis Besar Kode
Action
Kode diatas untuk memberi tahu kemana data pada form ini akan dikirim? disana
anbi mengarahkan ke file index.php
dengan menggunakan method POST
. Apa itu method POST
? bisa kalian lihat disini.
- Data yang dikirim
Kedua baris kode diatas adalah tempat data yang akan dikirim. Attribute name
digunakan sebagai identitas dari data yang dikirim, sehingga server dapat mengenali data tersebut berdasarkan nama yang kita berikan.
Jadi misal name = "username"
nanti ketika dikirim kita bisa menggunakan kode PHP untuk memanggil
data yang dia input di textbox dengan kode $_POST["username"]
.
- Hidden Input
Kode diatas nantinya akan sebagai penanda bahwa data yang dikirim ke index.php
adalah dari form Login. Kita juga akan membuat hal yang sama pada form pendaftaran.
Perhatikan attribute value
, value ini digunakan untuk mendefinisikan nilai default.
- Pindah Halaman
Daftar di sini
Untuk kode diatas digunakan untuk pindah ke halaman daftar.
Form Daftar
Lalu kita lanjut membuat tampilan form pada file daftar.php. Kode nya hampir sama dengan yang tadi, tetapi ada sedikit perubahan dan tambahan menjadi seperti ini :
Halaman Login
Daftar
Username
Email
Password
Daftar
Sudah punya akun?
Login di sini
Coba kita lihat hasilnya dengan mengakses link berikut ini //localhost/login-signup/pages/daftar.php.
Penjelasan Garis Besar Kode
Sebagian besar kode yang digunakan hampir sama seperti form login, tetapi disini nilai untuk Hidden Input diubah menjadi "DAFTAR" dan input data tambahan bernama "email".
Mari Hias Dengan CSS!
Nah, sentuhan terakhir agar form web kita terlihat elok nan cantik, perlu kita hias menggunakan CSS. Jika kalian lihat pada kode diatas, terdapat satu baris kode :
Yang berarti semua kode CSS pada file style.css
akan diimport kedalam file HTML yang memiliki baris kode tersebut. Gampangnya, baris kode itu menghubungkan file PHP
HTML kita dengan file CSS.
Nah sekarang mari kita masukkan kode CSS kedalam file style.css
.
*{
margin: 0;
padding: 0;
outline: 0;
font-family: 'Open Sans', sans-serif;
}
body{
height: 100vh;
background-color: #242424;
background-size: cover;
background-position: center;
background-repeat: no-repeat;
}
p {
color: rgb[26, 25, 25];
font-family: 'Open Sans', sans-serif;
padding-top: 10px;
}
h2 {
text-align: center;
padding-bottom: 20px;
}
a {
color: #752BEA;
font-family: 'Open Sans', sans-serif;
}
.container{
position: absolute;
left: 50%;
top: 50%;
transform: translate[-50%,-50%];
padding: 20px 25px;
width: 300px;
background-color: rgba[255, 255, 255, .9];
box-shadow: 0 0 10px rgba[255,255,255,.3];
}
.container h2{
text-align: left;
color: #1d1d1d;
margin-bottom: 30px;
border-bottom: 5px solid#1d1d1d;
}
.container label{
text-align: left;
color: #1d1d1d;
}
.container form input{
width: calc[100% - 20px];
padding: 8px 10px;
margin-bottom: 15px;
border: none;
background-color: transparent;
border-bottom: 1px solid #1d1d1d;
color: #1d1d1d;
font-size: 20px;
}
.container form button{
width: 100%;
height: 40px;
padding: 5px 0;
border: none;
background-color:#752BEA;
font-size: 18px;
color: #fafafa;
border-radius: 20px;
}
Setelah kita hias dengan kode diatas, anbi harap tampilan kedua form akan menjadi seperti ini.
Halaman Index!
Terakhir kita akan membuat halaman index. Nantinya, halaman ini akan menjadi target data form kita dikirim. Sehingga data yang kita masukkan pada form login atau daftar akan diproses disini.
Kode pada halaman index berisi seperti ini :
Penjelasan Garis Besar Kode
- Cek Request POST
Kode diatas bertujuan untuk mengetahui “apakah terdapat request POST yang masuk?". Maksud variabel $_POST["tujuan"]
adalah data dari yang dikirim melalui form ke
index.php
.
Jika
terdapat request POST dari hidden input "tujuan" maka nilai akan disimpan divariabel $tujuan
.
- Bagian Login
Nah, jika nilai variabel $tujuan
bernilai "LOGIN" maka ia akan mengambil data form input "username" dan "password" yang dikirim. Kedua data tersebut akan disimpan di variabel $username
dan $password
.
Disini anbi membuat kondisi simulasi login pada
umumnya. Jika nilai Username dan Password adalah "admin", maka halaman index.php
akan mengatakan “Selamat Datang, Admin!". Jika tidak makan halaman index.php
akan mengatakan Username atau Password Salah!"
- Bagian Daftar
Selanjutnya adalah bagian daftar, disini kita mengambil nilai dari data form input "username", "password", "email" dan menampilkan nilai $username
.
Ketika semua langkah - langkah diatas sudah kita implementasikan, maka web akan berjalan seperti ini.