Insert Query in Laravel Eloquent ORM | Laravel 9

Insert Query in Laravel Eloquent ORM

Create Controller

Open new terminal and run this command to create controller

php artisan make:controller customerController

Configure routes:

Go to routes>web.php

use App\Http\Controllers\customerController;

Route::get('/customer', [customerController::class, 'index']);
Route::post('/customer', [customerController::class, 'store']);

index is a function which return customer page and store is a function which store the data submitted through form. as given below code.

App>Http>Controllers:

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Models\Customers;

class customerController extends Controller
{
    public function index(){
        return view('customer');
    }

    public function store(Request $request){
        echo "<pre>";
        print_r($request->all());

        $customers = new Customers;
        $customers->name = $request['name'];
        $customers->email = $request['email'];
        $customers->password = md5($request['password']);
        $customers->city = $request['city'];
        $customers->state = $request['state'];
        $customers->address = $request['address'];
        $customers->gender = $request['gender'];
        $customers->dob = $request['dob'];
        $customers->save();
    }
}


Above code use to insert data. $customers->name is a database name and $request['name']; is a name which is present in input tag.

Note - Target table using - use App\Models\Customers; because table name is customers in the database>migration>customers_table.

App>Models>Customers.php


namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;

class Customers extends Model
{
    use HasFactory;
    protected $table = "customers";
    protected $primaryKey = "customer_id";
}

The form is given below

Create a file inside resources>views>customer.blade.php

<div class="container">
        <h2 class="text-center">Customer Registration</h2>

            <form class="row g-3" action="{{url('/')}}/customer" method="post">
                @csrf
                <div class="col-md-6">
                  <label for="inputEmail4" class="form-label">Name</label>
                  <input type="text" name="name" class="form-control" id="inputEmail4" value="{{old('name')}}">
                </div>
                <div class="col-md-6">
                  <label for="inputPassword4" class="form-label">Email</label>
                  <input type="email" name="email" class="form-control" id="inputPassword4" value="{{old('email')}}">
                </div>
                <div class="col-md-6">
                  <label for="inputEmail4" class="form-label">Password</label>
                  <input type="password" name="password" class="form-control" id="inputEmail4">
                </div>
                <div class="col-md-6">
                  <label for="inputPassword4" class="form-label">Confirm Password</label>
                  <input type="password" name="cpassword" class="form-control" id="inputPassword4">
                </div>
                <div class="col-md-6">
                  <label for="inputEmail4" class="form-label">City</label>
                  <input type="text" name="city" class="form-control" id="inputEmail4" value="{{old('city')}}">
                </div>
                <div class="col-md-6">
                  <label for="inputPassword4" class="form-label">State</label>
                  <input type="text" name="state" class="form-control" id="inputPassword4" value="{{old('state')}}">
                </div>
                <div class="col-12">
                  <label for="inputAddress2" class="form-label">Address</label>
                  <input type="text" name="address" class="form-control" id="inputAddress2" placeholder="Apartment, studio, or floor" value="{{old('')}}">
                </div>
                <div class="col-md-6">
                  <label for="inputCity" class="form-label">Gender: </label>
                  <div class="form-check ">
                    <input class="form-check-input" type="radio" name="gender" id="inlineRadio1" value="M">
                    <label class="form-check-label" for="inlineRadio1">Male</label>
                  </div>
                  <div class="form-check">
                    <input class="form-check-input" type="radio" name="gender" id="inlineRadio2" value="F">
                    <label class="form-check-label" for="inlineRadio2">Female</label>
                  </div>
                  <div class="form-check">
                    <input class="form-check-input" type="radio" name="gender" id="inlineRadio3" value="O">
                    <label class="form-check-label" for="inlineRadio3">Other</label>
                  </div>
                </div>
                <div class="col-md-4">
                  <label for="inputState" class="form-label">Date of Birth</label>
                  <input type="date" name="dob" class="form-control" id="inputCity">
                </div>
                <div class="col-12">
                  <button type="submit" class="btn btn-primary">Submit</button>
                </div>
              </form>
    </div>

Comments