Экспорт базы данных по дате laravel

190
03 января 2020, 17:00

Всем привет, не могу экспортировать базу по дате. Мой контроллер

public function export2(Request $request)
{
    $dateStart = $request->dateStart;
    $dateFinish = $request->dateFinish;
    $table = orders::where($dateStart, $dateFinish)->all();
    $filename = "test2.csv";
    $handle = fopen($filename, 'w+');
    // fprintf($handle, chr(0xEF).chr(0xBB).chr(0xBF));
    fputs($handle, chr(0xEF) . chr(0xBB) . chr(0xBF)); // BOM
    @fputcsv($handle, array('sep=,'));
    fputcsv($handle, array('description','phone'));
    foreach($table as $row) {
        fputcsv($handle, array(iconv('utf-8', 'windows-1251', $row['name']), iconv('utf-8', 'windows-1251', $row['description']), iconv('utf-8', 'windows-1251', $row['staticprice'])));
    }
    fclose($handle);
    $headers = array(
        'Content-Type' => 'text/csv',
    );
    return Response::download($filename, 'test.csv', $headers);
}

Мой select

SELECT * FROM `orders` WHERE created_at BETWEEN '2019-01-01 00:00:00' AND '2019-01-12 00:00:00'

и мой шаблон

<form method="GET" action="{{ route('export2') }}"  enctype="multipart/form-data">
@csrf
    <input type="date" name="imagedelete">
    <input type="date" name="imagedelete">
    <button type="submit" class="btn btn-primary waves-effect">Экспортировать</button>
</form>

Ошибка

Call to undefined method Illuminate\Database\Eloquent\Builder::all()

Помогите плиз

Answer 1

$table = orders::where($dateStart, $dateFinish)->all();

Здесь есть 2 ошибки:

  1. Либо вы применяете Model::all() и получаете все записи, либо вы добавляете условия и используете метод get().

Model::where('name', 'John')->get();

  1. У вас неправильно задано условие поиска по дате Должно быть как-то так

$table = Order::where('created_at', '>=', date('Y-m-d', $dateStart))->where('created_at', '<=', date('Y-m-d', $dateFinish))->get();

READ ALSO
Обновление SQL на сервере через PHP?

Обновление SQL на сервере через PHP?

Подскажите кодом в PHP, у меня есть база данных в sql на сервере, залита таблица с полями id, name и int и мне нужно чтоб скрипт проверял каждые 10 сектаблицу...

272
CentOS 6 несколько версий php

CentOS 6 несколько версий php

На сервере установлено ПО требующее php53

157
Почему не отрабатывает ajax?

Почему не отрабатывает ajax?

Таблица с данными из бд:

174
Добавить новый ключ в имеющийся уже массив foreach

Добавить новый ключ в имеющийся уже массив foreach

Использую PHP 72 Как добавить ключ 'experience' в имеющийся массив $doctors, если в двух foreach ключи одинаковые??

177