Controller ใน Laravel คืออะไร?

📌 Controller เป็นส่วนหนึ่งของโครงสร้าง MVC (Model-View-Controller) ใน Laravel ทำหน้าที่รับคำขอจากผู้ใช้ (Request) และควบคุมการทำงานของระบบ โดยสามารถประมวลผลข้อมูลจาก Model และส่งผลลัพธ์ไปแสดงใน View 📌 MVC โครงสร้างใน Laravel 📌 การสร้าง Controller ใน Laravel เราสามารถสร้าง Controller ได้โดยใช้คำสั่ง Artisan คำสั่งนี้จะสร้างไฟล์ที่ app/Http/Controllers/ProductController.php 📌 ตัวอย่าง Controller (app/Http/Controllers/ProductController.php) 📌 การกำหนด Route ให้ Controller Laravel ใช้ Route เพื่อเชื่อมโยง URL กับ Controllerให้ไปที่ routes/web.php และเพิ่มโค้ดต่อไปนี้: 📌 Route::resource() จะสร้าง Route ทั้งหมดให้อัตโนมัติ ได้แก่ HTTP Method…

การเพิ่ม, ลบ, และแก้ไขคอลัมน์ใน Laravel ด้วย Migration

ก่อนอื่น ถ้าต้องการแก้ไขตารางที่มีอยู่แล้ว ต้องใช้คำสั่ง make:migration โดยเพิ่ม –table=table_name เพื่อระบุว่าจะแก้ไขตารางไหน 1️⃣ การเพิ่มคอลัมน์ 🔹 ตัวอย่าง: เพิ่มคอลัมน์ phone และ address ในตาราง users ไฟล์ Migration ที่สร้างขึ้นจะอยู่ใน database/migrations/ และมีโค้ดเริ่มต้น ✏️ แก้ไขไฟล์ Migration: 📌 คำอธิบาย: ✅ รัน Migration: 2️⃣ การลบคอลัมน์ 🔹 ตัวอย่าง: ลบคอลัมน์ phone ออกจากตาราง users ✏️ แก้ไขไฟล์ Migration: ✅ รัน Migration: 3️⃣ การแก้ไขคอลัมน์ 📌 การแก้ไขคอลัมน์ใน Laravel ต้องใช้ doctrine/dbal package💡 ติดตั้ง package ก่อน…

การเชื่อมต่อฐานข้อมูลใน Laravel

Laravel รองรับการเชื่อมต่อฐานข้อมูลผ่าน Eloquent ORM และ Query Builder ซึ่งสามารถทำงานร่วมกับฐานข้อมูลหลายประเภท เช่น MySQL, PostgreSQL, SQLite และ SQL Server 1️⃣ การตั้งค่าการเชื่อมต่อฐานข้อมูล ไฟล์การตั้งค่าฐานข้อมูลใน Laravel อยู่ที่ 📌 1.1 ตั้งค่าในไฟล์ .env เปิดไฟล์ .env และตั้งค่าการเชื่อมต่อฐานข้อมูล เช่น MySQL 🔹 เปลี่ยนค่า DB_DATABASE, DB_USERNAME, และ DB_PASSWORD ตามค่าจริงของคุณ 🔹 ถ้าใช้ SQLite, ให้แก้เป็น (หรือใช้ database/database.sqlite ในโปรเจกต์) 📌 1.2 ตั้งค่าใน config/database.php แม้ว่าจะไม่ค่อยต้องแก้ไฟล์นี้ แต่ถ้าต้องการกำหนดค่าเพิ่มเติม สามารถแก้ได้ที่ ⚠️ หมายเหตุ: 2️⃣ ทดสอบการเชื่อมต่อฐานข้อมูล หลังจากตั้งค่าแล้ว…

การใช้งานฐานข้อมูลใน Laravel ผ่าน SQL (Raw Queries)

Laravel รองรับการใช้ Raw SQL Queries ผ่าน DB::select(), DB::insert(), DB::update(), DB::delete(), และ DB::statement(). 📌 อย่าลืม import use Illuminate\Support\Facades\DB; ก่อนใช้งาน 1️⃣ SELECT – คำสั่งดึงข้อมูล 📌 ดึงข้อมูลทั้งหมด (SELECT * FROM users) 🔹 ผลลัพธ์เหมือน DB::table(‘users’)->get(); 📌 ดึงข้อมูลแบบมีเงื่อนไข (WHERE id = ?) 💡 ใช้ ? เพื่อป้องกัน SQL Injection 2️⃣ INSERT – เพิ่มข้อมูล 📌 เพิ่มข้อมูลใหม่ (INSERT INTO users (name, email) VALUES…

การใช้งานฐานข้อมูลใน Laravel ผ่าน Query Builder

Laravel มี Query Builder ที่ช่วยให้เขียน SQL ได้ง่ายขึ้นโดยไม่ต้องใช้คำสั่ง SQL ตรงๆ 📌 ก่อนใช้งานต้อง import 1️⃣ SELECT – ดึงข้อมูล 📌 ดึงข้อมูลทั้งหมด (SELECT * FROM users) 🔹 ได้ผลลัพธ์เป็น Collection ของออบเจ็กต์ 📌 ดึงข้อมูลแค่บางคอลัมน์ (SELECT name, email FROM users) 📌 ดึงข้อมูลแบบมีเงื่อนไข (WHERE id = 1) 🔹 first() ดึงแค่ 1 แถวแรก 📌 ดึงข้อมูลหลายเงื่อนไข (WHERE name = ‘John’ AND email = ‘john@example.com’) 📌…

การใช้งานฐานข้อมูลใน Laravel ผ่าน Eloquent ORM

Eloquent เป็น ORM (Object-Relational Mapping) ที่ช่วยให้เราสามารถทำงานกับฐานข้อมูลได้ง่ายขึ้นโดยใช้ Model แทน SQL Query 📌 ก่อนใช้งานให้แน่ใจว่ามี Modelโดยปกติ Laravel จะมี Model User (app/Models/User.php) มาให้แล้วถ้าต้องการสร้าง Model ใหม่ใช้คำสั่ง 1️⃣ SELECT – ดึงข้อมูล 📌 ดึงข้อมูลทั้งหมด (SELECT * FROM users) 🔹 all() คืนค่าทุกแถวเหมือน SELECT * FROM users; 📌 ดึงข้อมูลแค่บางคอลัมน์ (SELECT name, email FROM users) 📌 ดึงข้อมูลแบบมีเงื่อนไข (WHERE id = 1) 🔹 ใช้ first() ดึงแค่…