logo Sipintek.com
Browse : Home / Pemrograman / PHP / Membuat Database Untuk Web CMS dengan MySQL #2
Gambar Membuat Database Untuk Web CMS dengan MySQL #2

Membuat Database Untuk Web CMS dengan MySQL #2

Published by I Gede Arya Surya Gita - Posted on Mei 16th, 2020 - No Comments

Hai Sipinter! kali ini mimin bakal lanjutin lagi pembahasan postingan sebelumnya mengenai cara membuat database untuk web CMS (Content Management System).

ini merupakan bagian dari topik cara membuat web cms sendiri dengan PHP dan MySQL. Setelah belajar cara membuat rancangan database menggunakan ERD.

Sekarang kita akan belajar cara mengimplementasikan desain tersebut menjadi database MySQL atau MariaDB. Dimana keduanya sangat mirip dan sama-sama bisa dikelola dengan menggunakan PHPMyAdmin.

Jika kalian menggunakan XAMPP versi terbaru maka kalian akan menggunakan database MariaDB dan postingan ini juga diimplementasikannya di MariaDB.

Intinya saya ingin menyampaikan informasi postingan ini bisa diterapkan pada Database MySQL dan MariaDB OKE.

Desain Database Untuk Web CMS

Jika kalian tertarik cara membuat desain database ini kalian bisa kunjungi postingan mimim yang part 1 yaitu:

Membuat Database Untuk Web CMS dengan MySQL #1

Berikut merupakan rancangan database yang akan kita gunakan dalam pengembangan proyek membuat CMS dengan PHP:

Gambar Desain Entity Relationship diagram (ERD) database CMS

Dari desain diatas untuk kalian programmer atau system analist pasti sudah tau bagaimana bentuk web ini jika jadi.

Namun untuk kalian yang masih pemula pasti agak pusing dan merasa mual sedikit wkwkwk. Tenang artikel ini saya buat untuk pemula, jadi kalau kalian mengikuti dari awal, pasti kalian akan mengerti.

Jika tidak mengerti tinggal tinggalkan pertanyaan di kolom komentar!

Tipe Data Untuk Tiap Atribut dalam Database Web CMS

Disini mimin bakal jelasin tipe data tiap field atau atribut setiap entitas dalam database agar kalian lebih mudah saat membuatnya.

Kali ini kita akan bahas pertabel dan ada 13 tabel oke semangat-semangat:

Tabel web

KolomTipePanjangDeskripsi
idint10PK
namavarchar50
urlvarchar200
emailvarchar100null
passwordvarchar200null
logo_media_idint10FK
meta_idint10FK
created_attimestampnull
updated_attimestampnull

Penjelasan :

  • FK = Primary Key;
  • FK = Foreign Key;
  • unigue= nilai tidak boleh sama;
  • null = Boleh kosong.

Tabel post

KolomTipePanjangDeskripsi
idint10PK
judulvarchar200unique
urlvarchar200unique
isitextnull
statusenum(‘draf’,’publish’,’evaluasi’)
waktu_updatetimestampnull
waktu_publishtimestampnull
user_idint10FK
meta_idint10FK
media_idint10FK
komentar_settingenum(aktif,nonaktif)
created_attimestampnull

Tabel page

KolomTipePanjangDeskripsi
idint10PK
judulvarchar200unique
urlvarchar200unique
isitextnull
statusenum(‘draf’,’publish’,’evaluasi’)
meta_idint10FK
media_idint10FK
created_attimestampnull
updated_attimestampnull

Tabel media

KolomTipePanjangDeskripsi
idint10PK
namavarchar200unique
alt_filevarchar200null
Jenis_fileenum(doc,image,video)null
created_attimestampnull
updated_attimestampnull

Tabel meta

KolomTipePanjangDeskripsi
idint10PK
kata_kuncivarchar250null
deskripsivarchar250null
tambahantextnull
created_attimestampnull
updated_attimestampnull

Tabel tag

KolomTipePanjangDeskripsi
idint10PK
namavarchar100unique
created_attimestampnull
updated_attimestampnull

Tabel daftar_tag

KolomTipePanjangDeskripsi
idint10PK
post_idint10FK
tag_idint10FK
created_attimestampnull
updated_attimestampnull

Tabel kategori

KolomTipePanjangDeskripsi
idint10PK
namavarchar50unique
deskripsivarchar250null
created_attimestampnull
updated_attimestampnull

Tabel daftar_kategori

KolomTipePanjangDeskripsi
idint10PK
post_idint10FK
kategori_idint10FK
created_attimestampnull
updated_attimestampnull

Tabel komentar

KolomTipePanjangDeskripsi
idint10PK
namavarchar200
emailvarchar200
websitetextnull
isitext
balasint10null
statusenum(publis,wait,spam)
post_idint10FK
created_attimestampnull
updated_attimestampnull

Tabel user

KolomTipePanjangDeskripsi
idint10PK
usernamevarchar30unique
nama_lengkapvarchar50
emailvarchar200
passwordvarchar200
hak_aksesenum(penulis,editor,admin,nonaktif)
tokenvarchar200
deskripsivarchar250null
created_attimestampnull
updated_attimestampnull

Tabel menu

KolomTipePanjangDeskripsi
idint10PK
namavarchar200
linkvarchar200
menu_indukint10null
kelompok_menu_idint5FK
created_attimestampnull
updated_attimestampnull

Tabel kelompok_menu

KolomTipePanjangDeskripsi
idint5PK
namavarchar200
deskripsivarchar200null
created_attimestampnull
updated_attimestampnull

Langkah-Langkah Membuat Database MySQL di PhpMyAdmin

Setelah kita membuat rancangan databasenya maka sekarang kita perlu menerapkannya ke database server kita. Kalian bisa menggunakan MySQL atau MariaDB karena kedua database itu mendukung PHPMyAdmin.

PHPMyAdmin adalah sebuah web aplikasi yang digunakan untuk mengelola database MySQL. Dengan PHPMyAdmin kita dapat mengelola apa saja dalam sebuah database tanpa menggunakan script melalui web.

Jadi menggunakan phpMyAdmin adalah pilihan yang sangat tepat untuk pemula. Namun untuk kebutuhan profesional juga bisa, karena disediakan halaman untuk menjalankan queri SQL(Structured Query Language).

Berikut merupakan langkah-langkah membuat databse melalui phpMyAdmin:

1. Membuat database MySQL dengan phpMyAdmin

Walaupun tahap ini sangat sederhana namun ini sangat penting. jadi cara membuat database adalah :

  • Buka XAMPP lalu aktifkan MySQL dan Apache.
  • Buka browser kalian apapun itu lalu buka localhost/phpmyadmin/ atau 127.0.0.1/phpmyadmin/, lalu login ke akun admin kalian. kalau settingan xampp masih default maka kalian akan langsung login.
  • Klik menu new >> database lalu isi nama database mu disini “smart_cms” dan klik create.

Seperti gambar di bawah:

Gambar Cara mengaktifkan MySQL di XAMPP dan cara membuat database MySQL dari Phpmyadmin

2. Membuat tabel di database MySQL dengan phpMyAdmin

Kita tidak boleh membuat tabel secara sembarangan karena setiap tabel akan memiliki relasi. Ini lah yang membuat mimin mengajarkan kalian membuat desain database sebelumnya.

Sehingga kalian tidak bingun lagi bagaimana membuat tabel dalam database dan hasilnya akan lebih maksimal.

Berikut merupakan tahapan membuat tabel yang harus kalian lakukan agar tidak terjadi error:

a. Membuat tabel Induk (Tabel yang tidak memiliki foreign key)

Tabel induk yang mimin maksud adalah tabel yang tidak memiliki atribut foreign key didalamnya. Tabel seperti ini lah yang bisa kita buat di awal.

Daftar tabel induk yang harus kita buat adalah kelompok_menu, user, kategori, tag, media dan meta.

berikut merupakan contoh cara membuat tabel user:

1) Untuk membuat tabel baru kita perlu klik database yang akan ditambah tabel, lalu masuk ke tab menu structure. Buat nama tabel baru disini “user “dan jumlah colomnya pilih go.

Gambar Cara membuat tabel di MySQL dengan PhpMyAdmin

2) Lalu kalian akan dialihkan ke halaman pengaturan kolom atau atribut. Lalu isi nama kolom sesuai atribut yang sudah kita rancang dan usahakan nama kolom tidak menggunakan simbol dan space cukup gunakan underscore.

Gambar Membuat Tabel kolom, typedata dan lengthnya di MySQL dengan PhpMyAdmin

3) Setting Type dengan mengisi tipe data tiap kolom sesuai rancangan yang sudah kita buat pastinya. Yang akan sedikit berbeda adalah pada type data enum length nya kalian isi dengan ‘penulis’,’editor’,’admin’,’nonaktif’ atau kalian bisa klik menu Edit ENUM/SET Values.

Gambar Cara membuat kolom enum di MySQL dengan PhpMyAdmin

4) kita harus setting kolom primary keynya dengan setting index nya menjadi PRIMARY. Lalu klik saja go jika keluar kotak dialog.

5) Yang terpenting karena kita menggunakan bilangan integer sebagai ID nya maka kita aktifkan AI (Auto incrementnya) dengan menceklisnya. Ini akan membuat kolom id otomatis terisi, dengan angka yang berurutan ketika kita inout user baru.

Gambar Cara membuat kolom primary key di MySQL dengan PhpMyAdmin

6) Setting kolom yang nilainya bisa null dengan menceklis bagian null.

Gambar Cara membual kolom dalam MySQL menjadi Null atau boleh dikosongkan dengan PhpMyAdmin

7)lalu setting kolom yang nilainya tidak boleh sama seperti username dengan setting index menjadi unique.

Gambar Cara membuat kolom yang bernilai unique di database MySQL dengan PhpMyAdmin

8) Lalu kalian tinggal scrool ke bawah dan cari tombol save dan jika berhasil kalian akan melihat structure tabel yang sudah dibuat.

Gambar Cara menyimpan settingan kolom atau field tabel di PhpMyAdmin

Buatlah tabel induk lainnya yang tidak memiliki foreign key. yaitu kelompok_menu, kategori, tag, media, meta dengan cara yang sama.

b. Membuat tabel yang hanya berelasi dengan tabel induk

  1. pertama perlu kita catat dalam kasus membuat cms sendiri ini ada beberapa tabel yang hanya berelasi dengan tabel induk yaitu: menu, page , post dan web.
  2. Langkah-langkah membuat tabel nya sama saja dengan langkah sebelumnya. bedanya setelah tabel dibuat kita harus menghubungkan kolom foreign ke ke kolom primary key tabel induk.
  3. Cara membuat kolom FK yang dapat menghubungkan sebuah tabel ke tabel induk pertama pastikan tipe data dan value kedua kolom tersebut sudah sama.
  4. Klik tabel yang memiliki foreign key contoh tabel post, lalu masuk ke tab menu structure. Lalu pilih tombol relation view.
  5. Lalu klik link tulisan internal relationship, artinya FK berhubungan dengan tabel yang ada dalam satu database.
  6. Lalu pilih kolom FK yang akan dihubungkan misal “user_id”, lalu pilih tabel induk dan kolom primary keynya.
  7. Jika sudah lalu pilih save.
  8. Hubungkan tiap foreign key satu persatu ke tabel induknya.
  9. Lalu gunakan cara yang sama untuk membuat tabel tabel lainnya yang hanya berhubungan hanya dengan tabel induk.
Gambar Cara Menghubungkan atau merelasikan sebuah tabel ke tabel induk dengan Foreign Key di database Mysql dengan PhpMyAdmin

c. Membuat tabel lainnya

Terakhir kalian sudah bisa membuat tabel lainnya yang hubungannya antara tabel induk dan tabel yang berhubungan dengan tabel induk lainnya.

Intinya jika kalian membuat tabel maka tabel yang berubungan dengan FK, harus jadi terlebih dahulu agar dapat langsung dihubungkan (direlasikan).

Tabel yang harus dibuat selanjutnya adalah tabel daftar_tag dan tabel daftar_kategori dan tabel komentar.

Caranya sama saja kok seperti sebelumnya, jika ada langkah-langkah yang membuat kalian bingung tanyakan saja di kolom komentar yak.

Sekian postingan kali ini jika ada kesalahan mimin mohon maaf. Nantikan postingan mimin selanjutnya untuk

Bagi kamu yang lagi berjuang belajar pemrograman tetap semangat dan “Nikmatilah sebuah proses mulai dari belajar, mengembangkan dan sampai kita bisa berbagi untuk orang lain”.

Bantu mimin dengan share postingan ini ke teman-teman mu! Terima Kasih 😀


Gambar Membuat Database Untuk Web CMS dengan MySQL #1

Membuat Database Untuk Web CMS dengan MySQL #1


Gambar Penjelasan MVC Dalam Pemrograman Web PHP

Penjelasan MVC Dalam Pemrograman Web PHP


Gambar Belajar Menggunakan Cookie di PHP

Belajar Menggunakan Cookie di PHP


Gambar Membuat Trait Untuk Menampung Method dalam OOP PHP

Membuat Trait Untuk Menampung Method dalam OOP PHP



Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *