แจกระบบจัดการเอกสาร โดยใช้ Laravel 5 Framework [PHP+MySQL]

ระบบเอกสารที่ผมได้ทำขึ้นมาใช้เครื่องมือในการพัฒนาคือ VSCODE และ Framework ของ ภาษา PHP คือ Laravel 5.6 ส่วน CSS ใช้ Framework Bootstrap 4.1 ในการพัฒนาเช่นกัน ซึ่งไว้ว่าการแจกจ่าย Source code จะเป็นตัวอย่าง code ให้กับผู้ที่สนใจศึกษา Laravel เหมือนผมเช่นกัน และระบบที่ผมนำมาแจกนั้นใช้ Template จาก PikeAdmin ซึ่งมีการใช้ bootstrap 4 ในการทำ Template และในสุดท้ายนี้หากใครมีปัญหาการติดตั้ง สามารถแสดงความเห็นไว้ด้านล่างนี้นะครับ

ระบบเอกสารมีตาราง 3 ตารางได้แก่ ตาราง users, categories, documents

ความสามารถของโปรแกรม

  1. สามารถกำหนดสิทธิ์การเข้าถึงตามผู้ใช้และผู้ดูแลได้ โดยผู้ใช้สามารถอ่านเอกสารได้อย่างเดียว
  2. เอกสารสามารถอัพโหลดไฟล์ได้เฉพาะนามสกุล PDF และป้องกันไม่ให้อัพโหลดนามสกุลอื่น
  3. มีหมวดหมู่เพื่อจำแนกประเภทเอกสารได้
  4. มีระบบตรวจสอบสิทธิ์การเข้าถึง โดยต้องระบบทุกครั้งที่ใช้งาน

ความต้องการของโปรแกรม

  1. PHP version 7.1.3 หรือมากกว่า
  2. ฐานข้อมูล maria DB

ทดสอบการใช้งาน

demo link https://www.bahtsoft.com/demo_ecdocument
username : tawatsak
password : 123456

ดาวน์โหลด

การติดตั้ง

  1. ดาวน์โหลด Project มาแล้ว เปิด Command line เข้าไปโฟล์เดอร์ Project
  2. พิมพ์ composer install
  3. พิมพ์ php artisan key:generate
  4. สร้างฐานข้อมูล และ ตั้งค่าข้อมูลในไฟล์ .env
  5. พิมพ์ php artisan migrate
  6. พิมพ์ npm install
  7. พิมพ์ npm run dev
  8. พิมพ์ php artisan serve
  9. เข้าเว็บ http://127.0.0.1:8000
  10. ตั้งค่ากำหนดสิทธิ์อัพโหลดไฟล์ที่โฟล์เดอร์ storage ให้ทุกคนสามารถอัพโหลดได้ (CHMOD 777)

** ขั้นตอนที่ 5 หากไม่ใช้ migrate สามารถ import sql ได้ (ไฟล์ฐานข้อมูลอยู่ใน root project)

** คู่มือเพิ่มเติม https://laravel.com/docs

*********
Special Thanks
*********
ขอขอบคุณทุกๆท่านที่ทำให้นักพัฒนามีแรงบรรดาลใจในการพัฒนาต่อไปโดยการ บอกต่อ(Share)
ธวัชศักดิ์ แตงเอี่ยม
ขอบคุณครับ

รูปภาพโปรแกรม

You May Also Like

About the Author: benext

โปรแกรมเมอร์ ติดต่อ : itoffside@hotmail.com

24 Comments

  1. ลอง import db แล้วขึ้นแบบนี้น่ะครับ

    Error
    SQL query:

    CREATE TABLE `documents` (
    `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT,
    `code_no` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
    `name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
    `reference` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
    `store` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
    `description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
    `file_name` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
    `doc_date` timestamp(0) DEFAULT NULL,
    `status` enum(‘normal’,’canceled’,’lost’) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT ‘normal’,
    `created_by` int(11) DEFAULT NULL,
    `updated_by` int(11) DEFAULT NULL,
    `categorie_id` int(11) NOT NULL,
    `created_at` timestamp(0) DEFAULT NULL,
    `updated_at` timestamp(0) DEFAULT NULL,
    PRIMARY KEY (`id`) USING BTREE,
    UNIQUE INDEX `documents_code_no_u[…]
    MySQL said: Documentation

    #1067 – Invalid default value for ‘doc_date’

    1. เครื่องคุณต้องมี 2 สิ่งต่อไปนี้
      – Composser (ใช้ในการพัฒนาและติดตั้งโปรแกรม)
      – NodeJS (ใช้ในการพัฒนาและติดตั้งโปรแกรม)

      จากนั้นทำตาม Step นี้นะครับ
      ดาวน์โหลด Project มาแล้ว เปิด Command line เข้าไปโฟล์เดอร์ Project
      พิมพ์ composer install
      สร้างฐานข้อมูลชื่อ ecdocument
      เข้าโฟลเดอร์โปรเจค สร้างไฟล์ .env (ก๊อปไฟล์ .env.example) ถ้าใครสร้างไม่ได้ให้สร้างบน Editor
      ตั้งค่าฐานข้อมูลในไฟล์ .env ในตัวแปรที่มี คือ DB_ นำหน้า
      พิมพ์ php artisan key:generate
      พิมพ์ php artisan storage:link
      พิมพ์ php artisan migrate
      พิมพ์ php artisan db:seed
      พิมพ์ npm install
      พิมพ์ npm run dev
      พิมพ์ php artisan serve
      เข้าเว็บ http://127.0.0.1:8000
      ตั้งค่ากำหนดสิทธิ์อัพโหลดไฟล์ที่โฟล์เดอร์ storage ให้ทุกคนสามารถอัพโหลดได้ (CHMOD 777)

  2. ดาวดหลดไม่ได้คะ ไลค์เพจแล้วก็ไม่ขึ้นหน้าดาวโหลด

  3. ผมติดตั้งได้แล้ว ถึงหน้า Login แล้ว จะเพิ่ม User อย่างไรครับ ผมติดที่หน้านี้เลย

  4. พี่คับ คือผมติดตั้งไม่ได้ กรุณาสอนวิธีติดตั้งอย่างละเอียดหน่อยได้ไหมคับ

  5. ผมติดตั้งไม่ได้อ่ะคับ ช่วยสอนวิธีติดตั้งอย่างละเอียดไดเไหมคับ

  6. มี error รายงานเอกสาร คลิกที่ link รหัสเอกสาร ขึ้นเป็น วงล้อ process ค้าง

  7. สวัสดีครับผมลองทำตามดูใช้งานปกติ แต่ลอง deploy บน XAMMP ดูกลับใช้ในส่วน อัพโหลด/ดูเอกสารไม่ได้ Object not found! ผมพลาดส่วนไหน ขอบคุณครับ

  8. ถ้าต้องการเปลี่ยนรูป และ itoffside.com เปลี่ยนให้เป็นตำแหน่ง พอจะทำได้ไหมครับ
    https://uppic.cc/d/KtmR

  9. ติดอยู่หน้า login ครับ ไม่มียวูสเข้าระบบครับ

    1. username ใช้ไม่ได้อ้ะคับ จะลองเข้าไปลองใน demo

        1. username ที่ให้มา login เข้าระบบตัว demo ไม่ได้ค่ะ

  10. ดาวน์โหลดเอกสารในระบบไม่ได้ครับ
    อัพโหลดไฟล์ไม่ได้ Error : Internal server error
    *Window 10+AppServ 9.3.0

  11. ติดที่คำสั่ง php artisan migrate แจ้งว่าไม่รู้จัก database ครับ
    ผมต้องสร้าง database จาก mariaDB หรือว่าใช้ของที่มีมาให้อยู่แล้วครับ

    ปล.โหลดจาก github.com

    1. ไปสร้างฐานข้อมูล ก่อนครับ แล้ว ไป config env ถึง ค่อยทำ migrate

  12. ติดตรงคำสั่ง php artisan migrate แจ้งว่า
    SQLSTATE[HY000] [1049] Unknown database ‘ecdocument’ (SQL: select * from information_schema.tables where table_schema = ecdocument and table_name = migrations)

    เหมือนไม่รู้จัก DB ครับ
    ส่วนที่ DB ที่สร้าง (มีมาให้) ecdocument.sql

    .env >>
    DB_CONNECTION=mysql
    DB_HOST=127.0.0.1
    DB_PORT=3306
    DB_DATABASE=ecdocument
    DB_USERNAME=root
    DB_PASSWORD=123456789

    database.php
    ‘mysql’ => [
    ‘driver’ => ‘mysql’,
    ‘host’ => env(‘DB_HOST’, ‘127.0.0.1’),
    ‘port’ => env(‘DB_PORT’, ‘3306’),
    ‘database’ => env(‘DB_DATABASE’, ‘ecdocument’),
    ‘username’ => env(‘DB_USERNAME’, ‘root’),
    ‘password’ => env(‘DB_PASSWORD’, ‘123456789’),
    ‘unix_socket’ => env(‘DB_SOCKET’, ”),
    ‘charset’ => ‘utf8mb4’,
    ‘collation’ => ‘utf8mb4_unicode_ci’,
    ‘prefix’ => ”,
    ‘strict’ => true,
    ‘engine’ => null,
    ],

    ไม่ทราบว่าเกิดจากอะไรหรอครับ

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.