ข้ามไปยังเนื้อหาหลัก
itOffside
Onmobile อ่าน 2 นาที 33 ความเห็น

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

Laravel
แจกระบบจัดการเอกสาร โดยใช้ 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

ดาวน์โหลด

https://github.com/ipball/ecdocument2

การติดตั้ง

  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)
ธวัชศักดิ์ แตงเอี่ยม
ขอบคุณครับ

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

Onmobile

โปรแกรมเมอร์

ความเห็น (33)

  • สลาสัน
    ลอง 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'
    • Onmobile ผู้เขียน
      เครื่องคุณต้องมี 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)
  • พรรณราย บุญสังข์
    ดาวดหลดไม่ได้คะ ไลค์เพจแล้วก็ไม่ขึ้นหน้าดาวโหลด
    • Onmobile ผู้เขียน
      ดาวน์โหลดจากลิงค์ https://github.com/ipball/ecdocument2
  • bosszi
    ผมติดตั้งได้แล้ว ถึงหน้า Login แล้ว จะเพิ่ม User อย่างไรครับ ผมติดที่หน้านี้เลย
    • Onmobile ผู้เขียน
      ล๊อกอินเข้าระบบได้ยังครับ
  • Mike
    พี่คับ คือผมติดตั้งไม่ได้ กรุณาสอนวิธีติดตั้งอย่างละเอียดหน่อยได้ไหมคับ
  • Suriya
    ผมติดตั้งไม่ได้อ่ะคับ ช่วยสอนวิธีติดตั้งอย่างละเอียดไดเไหมคับ
    • Onmobile ผู้เขียน
      ต้องมีความรู้และเข้าใจ Laravel ก่อนนะครับ
  • ศรนันท์ จันทร์หา
    มี error รายงานเอกสาร คลิกที่ link รหัสเอกสาร ขึ้นเป็น วงล้อ process ค้าง
    • Onmobile ผู้เขียน
      มีรูปภาพให้ดูไหมครับ
  • varavuth
    สวัสดีครับผมลองทำตามดูใช้งานปกติ แต่ลอง deploy บน XAMMP ดูกลับใช้ในส่วน อัพโหลด/ดูเอกสารไม่ได้ Object not found! ผมพลาดส่วนไหน ขอบคุณครับ
    • Onmobile ผู้เขียน
      ต้องใช้ คำสั่ง php artisan storage:link ครับ
  • teera
    ถ้าต้องการเปลี่ยนรูป และ itoffside.com เปลี่ยนให้เป็นตำแหน่ง พอจะทำได้ไหมครับ https://uppic.cc/d/KtmR
  • Vorapon Demanop
    ติดอยู่หน้า login ครับ ไม่มียวูสเข้าระบบครับ
    • jirapat padungkit
      username ใช้ไม่ได้อ้ะคับ จะลองเข้าไปลองใน demo
      • Onmobile ผู้เขียน
        เดี่ยวตรวจสอบให้อีกทีครับ
        • kewiiz
          username ที่ให้มา login เข้าระบบตัว demo ไม่ได้ค่ะ
  • Krissada Wannaso
    ดาวน์โหลดเอกสารในระบบไม่ได้ครับ อัพโหลดไฟล์ไม่ได้ Error : Internal server error *Window 10+AppServ 9.3.0
    • Onmobile ผู้เขียน
      symbol link ใน laravel ยังครับ
  • tanasan
    ติดที่คำสั่ง php artisan migrate แจ้งว่าไม่รู้จัก database ครับ ผมต้องสร้าง database จาก mariaDB หรือว่าใช้ของที่มีมาให้อยู่แล้วครับ ปล.โหลดจาก github.com
    • Onmobile ผู้เขียน
      ไปสร้างฐานข้อมูล ก่อนครับ แล้ว ไป config env ถึง ค่อยทำ migrate
  • TJ21
    ติดตรงคำสั่ง 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, ], ไม่ทราบว่าเกิดจากอะไรหรอครับ
    • Onmobile ผู้เขียน
      ถ้า import sql ก็ไม่ต้อง migrate ครับ
  • ๋JF
    Link โหลดไม่มี กด like ไปแล้วครับ
    • Onmobile ผู้เขียน
      PM มาหาผมใน facebook ครับ
  • เม
    ได้ทำคลิป youtube สอนทำมั้ยค่ะ
  • teerayuth
    เพิ่มผู้ใช้งานไม่ได้ครับ ขึ้นว่า internal server error
  • mickey
    อัปโหลดเอกสารไม่ได้ครับ เลือกไฟล์ pdf แล้วพอกดบันทึกขึ้น the file failed to upload
    • Onmobile ผู้เขียน
      ลองใช้คำสั่ง php artisan storage:link ครับ
  • wiwat
    ใช้ได้แล้วครับ สำหรับคนที่ยังไม่ได้แน่นำให้สร้างโปรเจคมา 1 อัน แล้วก๊อปปี้ .env แก้ไข ชื่อ Databaseหลังจากนั้นทำตามขั้นตอนข้างบนแล้ว เมื่อทำการสร้าง Database จนเรียบร้อยแล้วให้ไปลบ Table ออกให้หมดเพราะว่าไม่มีข้อมูลมาให้ แล้วให้ทำการ Import ecdocument.sql อีกครั้งก็จะ Login ได้ครับ
  • Chaiwat rathvittayagorn
    ยังมีคนดูแลอยู่ไหมครับ
    • Onmobile ผู้เขียน
      มีครับ

แสดงความเห็น

ไม่แสดงบนหน้าเว็บ

บทความที่เกี่ยวข้อง