Начало -> LARAVEL -> Laravel Система за отброяване на посетители

Създаване на таблица в базата данни:

php artisan make:migration create_visitors_table

Примерни полета:

 $table->ipAddress('ip_address')->nullable();
 $table->string('user_agent')->nullable();
 $table->mediumText('url')->nullable();
 $table->string('method')->nullable();
 $table->mediumText('request')->nullable();
 $table->text('languages')->nullable();            
 $table->text('headers')->nullable();
 $table->text('device')->nullable();
 $table->text('platform')->nullable();
 $table->text('browser')->nullable();
php artisan migrate

Следва създаване на модел:

php artisan make:model Visitor

Създаване на мидълуер:

php artisan make:middleware Visitors

Примерно съдържание:

use App\Models\Visitor;
use Illuminate\Support\Facades\Route;
        $ip = $request->ip();
        $user_agent = $request->userAgent();

        if ( \Route::current()->uri == '{page_slug}' ){

            $url = \Route::current()->parameters['page_slug'];

        }else{
            $url = \Route::current()->uri;
        }

        if ($url != 'admin/visitors'){
            Visitor::create([
                'date' => today(),
                'ip' => $ip,
                'created_at' => now(),
                'ip_address' => $ip,
                'user_agent' => $user_agent,
                'url' => $url,
            ]);
        }


Създаване на сървис провайдър:

php artisan make:provider VisitorServiceProvider

Примерно съдържание:

use App\Models\Visitor;
use View;
public function boot() {
 $this->app['router’]->pushMiddlewareToGroup('web', \App\Http\Middleware\Visitors::class);
 View::share('visitorCount',Visitor::count());
}


Регистриране на сървис провайдъра във файл config/app.php:

    'providers' =>
    [
    // Other providers
    App\Providers\VisitorServiceProvider::class,
    ]


За визуализиране във всяка blade форма може да се използва:

Total Site Visits: {{ $visitorCount }}

Генерирано в сървис провайдъра.

Създаване на контролер:

php artisan make:controller Admin/VisitorController
Total views: 180 , Total comments: 0
Leave a comment
No comments

© Авторски права на scs3.eu Всички права са запазени. Проектиран и разработен от fibonachi@abv.bg 2021 - 2025.