學習筆記_laravel

Laravel 電商網站開發課程學習筆記

:one: 課程總覽

課程名稱:Laravel eCommerce Development: A Beginner’s Course

  • 適合對象:
    • 沒有程式背景的新手
    • 有基本 HTML、CSS 知識
    • 想快速建立電商網站的開發者
  • 教學目標:
    • 使用 Laravel 建立一個使用者友善的電商網站
    • 學會實作註冊、登入、商品管理、訂單與結帳等功能

:two: Laravel 框架介紹

  • Laravel 是什麼?

    • 一個開源的 PHP 框架,語法簡潔、功能強大
    • 提供路由、Eloquent ORM、認證、Artisan CLI、Blade 模板等功能
  • Laravel 的特性

    • 強大 (Robust)
    • 易於理解 (Easy to understand)
    • 簡化冗長程式碼

:three: 專案核心功能

  • :white_check_mark: 使用者與管理員登入/註冊
  • :white_check_mark: 後台管理介面:上傳、編輯、刪除產品
  • :white_check_mark: 購物車功能:新增、編輯、移除
  • :white_check_mark: 訂單管理與結帳流程
  • :white_check_mark: 資料庫儲存與查詢
  • :white_check_mark: 支付方式整合(例如 Paystack)

:four: 環境設定與資料庫連線

.env 檔案

  • 儲存資料庫與系統敏感參數:

    DB_CONNECTION=mysql
    DB_HOST=127.0.0.1
    DB_PORT=3306
    DB_DATABASE=eshop
    DB_USERNAME=root
    DB_PASSWORD=
    
  • 不應提交至 Git,應加入 .gitignore

  • 若有變更需執行:

    php artisan config:clear
    php artisan cache:clear
    php artisan route:clear
    php artisan view:clear
    

常見錯誤與排除

  • SQLSTATE[HY000] [1045] Access denied
    • 資料庫帳號密碼錯誤或使用者不存在
    • 使用 HeidiSQL / phpMyAdmin 驗證資料庫連線

:five: 帳號密碼管理系統

兩種帳密系統:

  • MySQL 資料庫帳密(連線用)
    • 儲存於 MySQL 的 mysql.user 資料表
    • 用於 .env 的連線參數
  • Laravel 應用程式使用者帳密(網站登入)
    • 儲存在 users 資料表中
    • 密碼會用 Hash::make() 雜湊加密

:six: 專案初始化指令

  • 專案金鑰:php artisan key:generate
  • 資料庫遷移:php artisan migrate
  • 清除快取:php artisan config:clear
  • 檢查設定:
    php artisan config:show database.connections.mysql
    

:seven: Git 與 .gitignore 最佳實踐

  • 應忽略以下內容:
    .env
    /vendor/
    /node_modules/
    /storage/logs/*
    /bootstrap/cache/*
    *.sqlite
    *.log
    *.tmp
    

:eight: 額外補充:XAMPP 使用心得

  • 預設 MySQL root 無密碼
  • 可在 phpMyAdmin 編輯 root 密碼
  • 更改密碼後需修改 .envphpMyAdmin/config.inc.php

:nine: Laravel 專案概念圖

graph TD
    A[使用者註冊/登入] --> B[購物車管理]
    B --> C[結帳流程]
    C --> D[訂單建立]
    D --> E[支付整合]
    A --> F[管理後台]
    F --> G[產品管理]
    G --> B
    A --> H[資料庫連線驗證]

:pushpin: 本筆記可用於初學者 Laravel 實作入門,也可作為 Laravel 教學課程的學習補充材料。

:link: 延伸閱讀:

3個讚