How to install laravel 9
https://tutorial101.blogspot.com/2022/02/how-to-install-laravel-9.html
Connecting our Database
open .env file root directory.
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=
php artisan make:model Post -m
C:\xampp\htdocs\laravel\blog>php artisan make:model Post -m
Open new events migrations
yourproject/database/migrations
blog\database\migrations\_create_post_table.php
<?php use Illuminate\Database\Migrations\Migration; use Illuminate\Database\Schema\Blueprint; use Illuminate\Support\Facades\Schema; return new class extends Migration { /** * Run the migrations. * * @return void */ public function up() { Schema::create('posts', function (Blueprint $table) { $table->increments('id'); $table->text('post'); $table->timestamps(); }); } /** * Reverse the migrations. * * @return void */ public function down() { Schema::dropIfExists('posts'); } };Database Migration
php artisan migrate
C:\xampp\htdocs\laravel9\blog>php artisan migrate
Migration table created successfully.
check database table
Creating Controller
php artisan make:controller PostController
C:\xampp\htdocs\laravel\blog>php artisan make:controller PostController
change it with the following codes:
blog\app\Http\Controllers\PostController.php
//blog\app\Http\Controllers\PostController.php <?php namespace App\Http\Controllers; use Illuminate\Http\Request; use DB; class PostController extends Controller { public function index(){ return view('post'); } public function getDate(Request $request){ $posts = DB::table('posts') ->whereBetween('created_at', [$request->fdate, $request->sdate]) ->get(); return view('result', ['posts' => $posts]); } }Create Views
blog\resources\views\app.blade.php
//blog\resources\views\app.blade.php <!DOCTYPE html> <html> <head> <title>Laravel Query Between 2 Dates</title> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" /> </head> <body> @yield('content') </body> </html>blog\resources\views\result.blade.php
//blog\resources\views\result.blade.php @extends ('app') @section('content') <div class="container"> <h1 class="page-header text-center">Laravel Query Between 2 Dates</h1> <div class="row"> <div class="col-md-8 col-md-offset-2"> <h2>Results <a href="/" class="btn btn-primary pull-right">Back</a> </h2> @if(count($posts)>0) <table class="table table-bordered table-striped"> <thead> <th>Post Date</th> <th>Post</th> </thead> <tbody> @foreach($posts as $post) <tr> <td>{{ date('M d, Y h:i A', strtotime($post->created_at)) }}</td> <td>{{ $post->post }}</td> </tr> @endforeach </tbody> </table> @else <h3 class="text-center">No Post from Selected Range</h3> @endif </div> </div> </div> @endsectionblog\resources\views\post.blade.php
//blog\resources\views\post.blade.php @extends ('app') @section('content') <div class="container"> <h1 class="page-header text-center">Laravel Query Between 2 Dates</h1> <div class="row"> <div class="col-md-4 col-md-offset-4"> <h2 class="text-center">Select 2 Dates</h2> <form method="POST" action="/select"> {{ csrf_field() }} <div class="mb-3"> <label>First Date:</label> <input type="date" class="form-control" name="fdate"> </div> <div class="mb-3"> <label>Second Date:</label> <input type="date" class="form-control" name="sdate"> </div> <input type="submit" value="Submit" class="btn btn-primary"> </form> </div> </div> </div> @endsectionCreating Routes
blog\routes\web.php
//blog\routes\web.php <?php use Illuminate\Support\Facades\Route; use App\Http\Controllers\PostController; //add PostController //Route::get('/', function () { // return view('welcome'); //}); Route::get('/', [PostController::class, 'index']); Route::post('/select', [PostController::class, 'getDate']);Run C:\xampp\htdocs\laravel\blog>php artisan serve
Starting Laravel development server: http://127.0.0.1:8000