[ตอนที่ 1] เวิร์คช้อป CMS อย่างง่าย เก็บข้อมูลเป็นไฟล์

[ตอนที่ 1] เวิร์คช้อป CMS อย่างง่าย เก็บข้อมูลเป็นไฟล์
ในเวิร์คช้อปแรก เราเรียนรู้การสร้างเว็บไซต์อย่างง่ายๆ กันไปแล้ว ในเวิร์คช้อปนี้ เราจะมาเรียนรู้ต่อจากของเดิม โดยการเพิ่มเติมความสามารถในการเขียนและแก้ไขให้กับเวิร์คช้อปในคราวที่แล้ว

มีอะไรในเวิร์คช้อปนี้
  1. การสร้างโปรเจ็คคชสาร ที่ใช้การติดตั้งด้วย Composer
  2. เรียนรู้การออกแบบเว็บที่มีระบบแอดมิน
  3. เรียนรู้การ Login อย่างง่าย ไม่ต้องใช้ฐานข้อมูล
  4. เรียนรู้การเก็บข้อมูลลงไฟล์ด้วยคชสาร
  5. การใช้งานฟอร์ม ทั้งแบบที่ใช้ Ajax และ ไม่ใช้ Ajax ในการ Submit
  6. การจัดการกับข้อผิดพลาดของฟอร์ม
  7. การใช้งาน DataTable แสดงข้อมูลรูปแบบตาราง สำหรับข้อมูลแบบ Array ไม่ต้องเชื่อมต่อกับฐานข้อมูล

การติดตั้ง
1. ดาวน์โหลดโค้ดของเวิร์คช้อปนี้จาก Github https://github.com/...iriya/kotchasan-tcms จะเห็นว่าโค้ดที่ดาวน์โหลดมาจะไม่มีส่วนของ Kotchasan Web Framework ติดตั้งมาด้วย ซึ่งเราจะทำการติดตั้งคชสารในขั้นตอนต่อไป
2. ติดตั้งคชสาร เว็บ เฟรมเวิร์ค ตัวอย่างนี้มีเจตนาจะให้เห็นว่าเราสามารถติดตั้งคชสารด้วย Composer ก็ได้ (สำหรับคนที่ชอบใช้วิธีนี้) หรือจะติดตั้งคชสารด้วยวิธีปกติก็ได้ ซึ่งจะทำให้ได้โครงสร้างไดเร็คทอรี่ที่แตกต่างจากการติดตั้งปกติ เล็กน้อย ซึ่งเราสามารถจัดการเองได้ไม่ยาก
2.1 ติดตั้งคชสารด้วย composer โดยเปิด terminal พิมพ์คำสั่งด้านล่าง แล้วกด Enter ทีละบรรทัด
cd /path/to/kotchasan-tcms/
composer install

บรรทัดแรก cd ให้ระบุ ไดเร็คทอรี่ที่ติดตั้ง TCMS ไว้
บรรทัดที่สอง เรียก composer ให้ติดตั้งคชสารให้
2.2 ติดตั้งคชสารด้วยการดาวน์โหลด สามารถดาวน์โหลด หรือใช้การโคลนคชสารจาก github มาก็ได้ครับ โดยต้องติดตั้งคชสารไว้ที่ /vendor/goragod/kotchasan/
3. ทำการแก้ไขไฟล์ load.php ของ TCMS ให้ชี้ไปยังที่อยู่ที่ถูกต้องของไฟล์ /Kotchasan/load.php (ในกรณีที่ติดตั้งคชสารไว้ที่อื่นนอกเหนือจากนี้)
include 'vendor/goragod/kotchasan/Kotchasan/load.php';

4. ปรับ chmod ให้ไดเร็คทอรี่ datas/ และไฟล์ทั้งหมดในนั้นให้สามารถเขียนได้ (เช่น 777)
เสร็จแล้วลองทดสอบเรียกเว็บไซต์ดูครับ
สามารถเข้าระบบผู้ดูแลได้ที่ /admin/index.php โดยมี username : admin และ password : admin ซึ่ง username และ password สามารถแก้ไขได้ที่ /settings/config.php
ส่วนข้อมูลเมนูจะอยู่ที่ /datas/menus.php และ ข้อมูลหน้าเพจ อยู่ที่ datas/index/ ผมไม่แนะนำให้แก้ไขไฟล์เหล่านี้ด้วยตัวเองนะครับ เนื่องจากอาจผิดพลาดได้ และ โปรเจ็คนี้มีส่วนสำหรับแก้ไขข้อมูลพวกนี้ให้แล้ว
หมายเหตุ หน้าตาของโปรเจ็คนี้จะเหมือนกับโปรเจ็คก่อนทุกประการ จะต่างกันที่ความสามารถของโปรเจ็ค
0SHAREFacebookLINE it!