View
@extends('admin.layout.master')
@section('content')
<form method="POST" action="/upload" enctype="multipart/form-data">
@csrf
<input type="file" name="csv_file">
<button type="submit">Import CSV</button>
</form>
@endsection
Controller
<?php
namespace App\Http\Controllers\User;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use App\Models\Userlist;
class CourceController extends Controller
{
//open file upload blade
public function import()
{
//
return view('user.upload');
}
//csv import code
public function upload(Request $request)
{
$file = $request->file('csv_file');
if ($file->isValid() && $file->getClientOriginalExtension() == 'csv') {
$handle = fopen($file->getRealPath(), "r");
if ($handle !== FALSE) {
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
// Replace this with your own code to insert the data into your database table.
Userlist::create([
'firstname' => $data[0],
'email' => $data[1],
'password' => $data[2],
// ...
]);
}
fclose($handle);
}
}
// You can redirect back to the previous page or show a view here.
}
}
web.php
<?php
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\filterController;
use App\Http\Controllers\AdminLoginController;
// use App\Http\Controllers\Admin\CourceController;
use App\Http\Controllers\User\CourceController;
use App\Http\Middleware\UserAuth;
/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/
Route::get('/', function () {
return view('welcome');
});
Route::get('/import', [CourceController::class, 'import'])->name('import');
Route::post('/upload', [CourceController::class, 'upload'])->name('upload');
--------------------------------------
Model
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class Userlist extends Model
{
use HasFactory;
protected $table='userlists';
protected $fillable = ['firstname','email','password'];
}