<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Submission;
use Response; // for export method
class HomeController extends Controller
{
// ...
public function export(Request $request, Submission $submission) {
if ($request->has('from') && $request->has('to')) {
$date_from = $request->from;
$date_to = $request->to;
$submission = $submission->whereBetween("created_at", ["{$date_from} 00:00:00", "{$date_to} 23:59:59"]);
}
$table = $submission->get();
$filename = "submissions.csv";
$handle = fopen($filename, 'w+');
fputcsv($handle, array(
'First Name',
'Last Name',
'City',
'State',
'Zip',
'Email',
'Phone',
'CDL-A',
'Experience',
'Submitted',
));
foreach($table as $row) {
fputcsv($handle, array(
$row['first_name'],
$row['last_name'],
$row['city'],
$row['state'],
$row['zipcode'],
$row['email'],
$row['phone'],
$row['cdla'],
$row['experience'],
$row['created_at'],
));
}
fclose($handle);
$headers = array(
'Content-Type' => 'text/csv',
);
return Response::download($filename, 'submissions.csv', $headers);
}
}