hakanylmz Hayır şöyle yapın:
Önce bir middleware oluşturun (Ne olduğunu bilmiyorsanız https://laravel.com/docs/8.x/middleware)
app/Http/Middleware/SetRefIdCookie.php
class SetRefIdCookie
{
public function handle(Request $request, Closure $next)
{
if (!$request->hasCookie('refId')) {
if ($request->filled('ref_id') && is_numeric($request->input('ref_id'))) {
Cookie::queue('refId', (int)$request->input('ref_id'), 2880);
} else {
Cookie::queue('refId', 1, 2880);
}
}
return $next($request);
}
}
Bunu app/Http/Kernel.php içinde $middlewareGroups[] dizisinin web anahtarının en altına ekleyin.
Bir tane size refId getirecek bir sınıf yazın. Mesela app/Resolvers/RefId.php:
use Illuminate\Support\Facades\Cookie;
class RefId
{
public static function get(): int
{
return (int)Cookie::get('refId', request('ref_id', 1));
}
}
Artık şöyle alabilirsiniz:
$refId = RefId::get();