Membuat Blog Pada PHP Dan Database MySQL
Membuat Blog Pada PHP Dan Database MySQL
OLEH:
Kelompok 8 :
Dosen Pengampu :
Sebuah blog seperti yang diketahui ini adalah aplikasi di mana beberapa pengguna (pengguna
Admin) dapat membuat, mengedit, memperbarui dan menerbitkan artikel yang tersedia di
publik untuk dibaca dan mungkin dikomentari. Pengguna dapat menelusuri katalog artikel ini
dan mengomentarinya.
- Sistem pendaftaran dengan dua jenis pengguna yaitu Admin dan Pengguna Normal
- Blog akan memiliki area admin dan area publik yang terpisah antara satu dengan yang lain
- Area admin hanya dapat diakses oleh pengguna admin dan area publik untuk pengguna
normal dan masyarakat umum
- Di bagian admin, ada dua jenis admin:
1. Admin:
a. Dapat membuat, melihat, memperbarui, menerbitkan / membatalkan publikasi dan
menghapus tulisan apapun.
b. Dapat membuat, melihat, memperbarui, dan menghapus topik.
c. Pengguna Admin dapat menambah pengguna admin lain atau Penulis
d. Dapat melihat, memperbarui, dan menghapus pengguna admin lainnya
2. Penulis:
a. Dapat membuat, melihat, memperbarui, dan menghapus hanya posting yang dibuat
sendiri
b. Mereka tidak dapat mempublikasikan postingan. Semua penerbitan postingan
dilakukan oleh pengguna Admin.
c. Hanya tulisan yang dipublikasikan yang ditampilkan di area publik
d. Setiap postingan dibuat di bawah topik tertentu
e. Halaman publik mencantumkan postingan; setiap tulisan ditampilkan dengan
gambar, penulis, dan tanggal pembuatan.
f. Pengguna dapat menelusuri semua daftar postingan di bawah topik tertentu dengan
mengklik topik tersebut
g. Ketika seorang pengguna mengklik sebuah postingan, mereka dapat melihat
dengan lengkap.
Pelaksanaan
Kami akan memanggil project, Pada direktori server (htdocs atau www), buat folder project-
nya. Pilih editor teksnya, misalnya, Sublime Text. Lalu buat subfolder yaitu: admin, include,
dan static.
1. Folder admin : Akan menyimpan file untuk area backend admin. File yang berkaitan
dengan membuat, melihat, memperbarui, dan menghapus baik itu postingan, topik, bahkan
pengguna.
2. Folder includes : Akan menyimpan file yang berisi potongan kode yang akan dimasukkan
ke dalam satu atau lebih halaman lain. Misalnya. File untuk tampilan kesalahan
3. Folder static: file statis seperti gambar, stylesheet CSS.
Folder statis seperti yang dikatakan sebelumnya, itu akan menampung penataan style untuk
situs. Terdapat 2 subfolder di dalam folder static : css, images. Dalam subfolder css yang baru
saja di buat, terdapat file bernama public_styling.css. Kode ini berfungsi untuk menambahkan
style css default situs, ditambah style untuk navbar dan untuk footer.
Terdapat Index pada folder root projek untuk menampilkan halaman utama website, sehingga
index memanggil fungsi-fungsi yang akan digunakan pada halaman utama seperti navbar,
banner, registration_login dan public_function. Pada Page Content terdapat fungsi untuk
menampilkan post,gambar dan topik-nya.
Pada halaman sederhana ini memiliki beberapa segmen kode yang akan diulang di banyak
halaman lain dari situs web. Misalnya, sebagian besar halaman akan memerlukan navbar dan
footer serta link ke style dan font yang ada di bagian header. Dalam PHP, kita dapat menulis
sepotong kode dalam satu file dan memasukkannya pada posisi tertentu di beberapa file
lainnya. Ini sama dengan menulis kode yang sama di lokasi tersebut tetapi dengan
keuntungan mencegah kode berulang.
Bagian yang berulang adalah bagian header, navbar, dan footer. Jadi di folder include
terdapat head_section.php, navbar.php dan footer.php.
Pada head_section.php terdapat font yang sudah dihubungkan ke internet serta memanggil
public_styling.css untuk digunakan style-nya pada seluruh include
navbar.php berfungsi untuk menu atas pada blog atau navigasi menu yang akan dipilih
Footer menampilkan kredensial blog serta tahunnya.
File config.php pada root project berfungsi untuk menghubungkan dengan database
Posts :
users :
Aplikasi ini telah disusun sedemikian rupa sehingga kode PHP terpisah dari HTML mungkin. Operasi
seperti query database dan melakukan beberapa logika pada data dilakukan dalam fungsi PHP dan
hasilnya dikirim ke HTML untuk ditampilkan.
Oleh karena itu, terdapat file bernama public_functions.php di folder include. File ini akan
menampung semua fungsi PHP kami untuk area publik. Semua halaman yang menggunakan salah
satu fungsi dalam file ini harus memiliki file ini termasuk di bagian atas halaman.
public_functions.php
Selanjutnya adalah membuat tabel topik dan membentuk hubungan banyak antara posting dan tabel
topik. Untuk melakukan ini, kami akan membuat dua tabel baru: topik untuk menyimpan topik, dan
tabel post_topic untuk menangani hubungan antara posting dan topik.
Topics :
Field type specs
id INT(11)
name VARCHAR(255)
slug VARCHAR(255) UNIQUE
Post_topic:
filtered_posts.php adalah halaman yang mencantumkan semua posting di bawah topik tertentu
ketika pengguna mengklik topik itu.
single_post.php adalah halaman yang menampilkan posting lengkap secara rinci ketika pengguna
mengklik thumbnail posting.
Kedua file ini memerlukan beberapa fungsi dari file public_functions.php kami. filtered_posts.php
membutuhkan dua fungsi yang disebut getPublishedPostsByTopic () dan getTopicNameById ()
sementara single_posts.php perlu getPost () dan getAllTopics ().
File login.php dan register.php berfungsi untuk login/masuk sebagai admin serta registrasi.
Login.php
Register.php
Di bagian atas kedua file, kami menyertakan file bernama registration_login.php untuk menangani
logika registrasi dan login. Ini adalah file tempat info masuk dan formulir pendaftaran akan
dikirimkan dan komunikasi dengan basis data akan dilakukan.
Alasan kami membuat folder denga menyertakan yang terpisah untuk area admin adalah untuk
memastikan bahwa semua file admin berada dalam satu folder (admin).
Users.php
Ini semua adalah hal yang perlu kita lakukan di file users.php. Membuat, mengedit, dan menghapus
pengguna akan dilakukan dalam file yang satu ini.
Create_post, post,topic, dan user masing-masing berfungsi untuk membuat post baru, mengatur
post, membuat topic dan mengatur user
Pada create_post disni saya memakai CKEDITOR sehingga ia harus terhubung dengan internet untuk
menggunakannya.
Seringkali untuk posting blog, Anda perlu menulis beberapa teks dalam Huruf Tebal, Miring, Garis
Bawah, Judul, dipesan dan tidak berurutan, serta unggah gambar. Untuk melakukan ini, Anda akan
memerlukan ckeditor untuk memberikan teks yang seperti fitur tersebut. Ini mengharuskan kita
untuk memasukkan skrip plugin ckeditor yang sudah kita lakukan di file head_section.php.
Untuk mengaktifkan ckeditor ini pada textarea, 3 hal yang harus dilakukan:
• Kita harus memasukkan skrip sumber CKEditor (seperti yang sudah kita lakukan di file
head_section.php)
• Kita harus memiliki textarea dan memberinya id (katakan id = "body", seperti yang kita lakukan
dalam kasus ini)
• Terakhir, kita harus menginisialisasi textarea dengan script ini (seperti yang kita lakukan pada
create_post.php):
Lalu,pada includes folder admin berfungsi sebagai menu vaigasi, serta fungsi admin.
Selanjutnya, pada untuk menghias halaman admin terdapat admin_styling.css pada folder static
Kami akan menggunakan formulir yang sama untuk membuat dan mengedit posting. Yang tersisa
sekarang adalah kita menulis fungsi yang bertanggung jawab untuk membuat, mengedit, memperbarui,
dan menghapus posting. Kami melakukannya di post_functions.php