Как получить данные в диапазоне дат из базы данных mysql в Laravel? - PullRequest
0 голосов
/ 12 января 2020

В моем приложении, если кто-то нажимает кнопку «Фильтр», я хочу отобразить данные в виде таблицы из базы данных mysql, но здесь я не получаю никаких ответов. Пожалуйста, кто-нибудь поможет мне с этим.

custom_script. js

fetch_data();
    function fetch_data(from_date = '', to_date = '') {
        if(from_date != '' && to_date != '') {
               console.log(from_date+' | '+to_date)
        }

    }

    $('#filter').click(function() {
        var from_date = $('#from_date').val();
        var to_date = $('#to_date').val();
        if(from_date != '' && to_date != '') {
            fetch_data(from_date, to_date);
        }
        else {
            alert('Both Date is required');
        }
    });

    $('#refresh').click(function() {
        $('#from_date').val('');
        $('#to_date').val('');
        fetch_data();
    });

HolidayController. php

public function fetch_data(Request $request)
    {

        if($request->from_date != '' && $request->to_date != '') {
            $data = DB::table('holidays')
                ->whereBetween('startdate', 
                array($request->from_date, $request->to_date))
                ->get();
        }
        else {
            $data = DB::table('holidays')->orderBy('startdate', 'desc')
            ->get();
        }
        return response($data);
    }

Ответы [ 2 ]

0 голосов
/ 12 января 2020

Ваш fetch_data метод в custom_script. js должен быть примерно таким же, как ваш предыдущий скрипт

function fetch_data(from_date = '', to_date = '') {
        $.ajax({
            url:"{{ route('holiday.fetch_data')}}",
            method:"POST",
            data:{
                from_date:from_date, to_date:to_date, _token:_token
            },
            dataType:"json",
            success:function(data) {
                var output = '';
                $('#total_records').text(data.length);
                for(var count = 0; count < data.length; count++) {
                    output += '<tr>';
                    output += '<td>' + data[count].id + '</td>';
                    output += '<td>' + data[count].firstname + '</td>';
                    output += '<td>' + data[count].lastname + '</td>';
                    output += '<td>' + data[count].startdate + '</td>';
                    output += '<td>' + data[count].enddate + '</td></tr>';
                }
                $('tbody').html(output);
            }
        })
    }

Вы использовали мой скрипт здесь, который я использовал для демонстрации. Это не работоспособный код. Вам нужно сделать ajax запрос к server, чтобы получить некоторые данные как response.

0 голосов
/ 12 января 2020

Вы можете использовать его как эти

$holiday = Holiday::where('from_date', '>=', $date)->where('to_date', '<=', $date)->get();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...