Nama : Muchammad
Solakhuddin Ihsan
NIM : 2002040952
Kelas : IF-C
(Semester 3)
Lembar Kerja Ujian Akhir Semester
1. DFD
· Pada DFD projek marketplace saya menambahkan
fitur registrasi dan update data user.
· Fitur-fitur tersebut ditujukan untuk
para pelaku user (customer)
· Pada fitur registrasi yang terdapat
pada menu regist, user diminta untuk memberikan data-data diri yang nantinya
dapat digunakan oleh system untuk memudahkan transaksi dan user experience.
sebagai contoh data diri layaknya nama, alamat, e-mail, dst. Ada juga beberapa
data yang tidak diinputkan oleh si user itu sendiri, contoh data kapan user
melakukan pendaftaran akun, user ID, dll. Data-data tersebut diharapkan dapat
digunakan sebagai pendukung beberapa fitur yang dibuat orang lain. Sebagai
contoh pada saat bertransaksi data diri seperti nama dan alamat akan dipakai
untuk mengetahui siapa yang sedang melakukan transaksi dan user juga tidak
perlu melakukan input alamatnya dimana karena data alamat sudah pernah
dilakukan saat user mendaftar. Dan pada menu admin, data user dapat
dimanfaatkan sehingga admin dapat mengetahui apakah akun user tersebut masih
aktif dan kapan terakhir kali dia online.
· Fitur update data dapat dilakukan
apabila user telah melakukan registrasi, fitur tersebut terdapat pada menu
update. Fitur ini berguna apabila user ingin melakukan update/perubahan data
diri sesuai dengan dengan yang dikehendakinya.
2. Flowcharts
a. Registrasi user baru
Pada saat
user pertama kali mengakses pada web marketplace user dihadapkan dengan menu
login, apabila user belum memiliki akun maka user perlu mendaftarkan akun baru
pada sistem pada menu registrasi. Pada menu registrasi/pendaftaran akun, user
melakukan input data pada formulir, apabila terdapat data yang sama atau dengan
kata lain data tidak tersedia maka user akan diminta mengisi ulang data yang
sama (sesuai dengan rule form_validation). Apabila data yang diinputkan
tersedia maka data akan dimasukkan dalam database dan user diarahkan pada menu
login dan mendapatkan notifikasi keberhasilan mendaftar. Berikut adalah
flowchartnya.
b. Update data user
Apabila user
ingin melakukan perubahan data sesuai dengan yang dikehendaki maka fitur update
data user menjadi berguna. Update dapat dilakukan ketika user telah melakukan
login dan pergi pada menu update data user. Pada menu update user menginputkan
perubahan sesuai kehendaknya, apabila user tidak melakukan perubahan apapun
maka user diarahkan pada menu Home. Apabila data yang diinputkan tidak tersedia
maka user mendapatkan notifikasi dibawah kolom inputannya dan diminta untuk
menginputkan ulang dengan data yang berbeda. Apabila data inputan tersedia maka
data akan dimasukkan dalam database kemudian user diarahkan pada menu Home dan
mendapatkan notifikasi keberhasilan update. Berikut adalah flowchatnya :
3. Database/Table
Fitur-fitur yang saya tambahkan pada projek marketplace memakai table
yang saya buat dengan nama “usersdb”. Berikut adalah detail struktur tablenya :
· Pada kolom id saya memakai tipe data
integer dengan tambahan perintah AUTO_INCREMENT, hal itu saya lakukan agar user
secara otomatis mendapatkan id tanpa melakukan secara manual.
· Pada kolom tgl_lahir, date_created,
last_log saya memilih tipe data date dan tipe data tersebut merupakan tipe data
numerik. Hal tersebut saya lakukan karena ada kemungkinan ada beberapa
developer lain yang akan melakukan suatu proses dengan data yang dimiliki oleh
user. Contoh pada kolom tgl_lahir dapat dilakukan sebuah proses perhitungan
berapa umur user dari tanggal kelahirannya sampai hari ini.
4. Tampilan Website
a. Tampilan Fitur registrasi user
b. Source Code Tampilan Fitur registrasi user
· View ini dimuat ketika Controller
UserRegist dipanggil
· Tombol submit dilakukan untuk
mengirimkan data yang di inputkan
· Tombol batal hanyalah redirect yang
mengarah kembali pada menu login
c. Tampilan Fitur Update User
d. Source Code Tampilan Fitur Update
User
· View ini dimuat ketika cotroller
UserUpdate dipanggil
· Tombol submit dilakukan untuk
mengirimkan data yang di inputkan
· Tombol batal hanyalah redirect yang
mengarah kembali pada menu home
5. Source Code
a. Controller
Controller UserRegist memiliki peran dalam memuat view “UserRegist” dan memproses data-data inputan user sebelum akhirnya data tersebut dikirim ke model (Regist_model), berikut adalah detail controllernya. *NB : (penjelasan kode ada pada komen kode
Controller UserUpdate memiliki peran dalam mamuat view “UserUpdate”
dan melakukan proses inputan update data sebelum akhirnya dikirim ke model “Regist_Model”,
berikut adalah detail controllernya. *NB : (penjelasan kode ada pada komen diatas
baris kode)
b. View
View UserRegist adalah interface bagi user dan system
untuk melakukan proses registrasi akun baru. Berikut adalah kode htmlnya :
· Fungsi form_error() digunakan sebagai
notifikasi apabila user melakukan kesalahan saat menginputkan data
View UserUpdate adalah interface bagi user dan system
untuk melakukan proses update data diri user. Berikut adalah kode htmlnya :
· Sama halnya dengan form_error fungsi
$this->session->tempdata() juga berfungsi sebagai notifikasi apabila user
melakukan kesalahan saat menginputkan data. alasan kenapa saya memakai dua
fungsi yang berbeda karena saya ingin melakukan beberapa fungsi kustom pada
inputan password dengan menggunakan $this->session->tempdata(), dalam kasus
yang saya hadapi fungsi form_error tidak sesuai dengan kebutuhan saya.
c. Model
Regist_Model berfungsi untuk melakukan proses CRUD
data pada database, berikut adalah detail dari model yang saya buat :
· Method get_user_by_email() berfungsi
untuk mengambil data-data dari database yang nantinya akan ditampilkan, contoh
saat melakukan update user data akan ditampilkan pada form update sebagai nilai
defaultnya, hal ini membantu user dalam mengupdate data dirinya
· Method insert_user() berfungsi untuk
melakukan insert data pada database
· Method update_user() berfungsi untuk
melakukan perubahan/update data pada database sesuai dengan nomor id dari user
Komentar
Posting Komentar