Cara Memasukkan Data dari Excel ke MySQL Laravel

Posted on

Laylikelily.com – Memasukkan data dari Excel ke MySQL bisa menjadi pekerjaan yang melelahkan, apalagi jika data yang harus dimasukkan cukup banyak. Namun, dengan menggunakan Laravel, Anda bisa melakukan hal tersebut dengan lebih mudah dan efisien. Berikut adalah langkah-langkah sederhana untuk memasukkan data dari Excel ke MySQL menggunakan Laravel.

Cara Memasukkan Data dari Excel ke MySQL Laravel

Cara Memasukkan Data dari Excel ke MySQL Laravel

MySQL adalah salah satu jenis database yang sering digunakan dalam pengembangan web. Sementara itu, Laravel adalah salah satu framework PHP yang populer digunakan untuk membangun aplikasi web. Dalam artikel ini, kita akan membahas cara memasukkan data dari Excel ke MySQL dengan menggunakan Laravel.

Langkah 1: Persiapan

Pertama-tama, pastikan bahwa kita telah menginstal Laravel dan MySQL pada mesin kita. Selain itu, kita juga akan membutuhkan library PHPExcel untuk membaca file Excel.

Untuk menginstal PHPExcel, kita dapat menggunakan Composer dengan mengetikkan perintah berikut pada terminal:

composer require phpoffice/phpexcel

Langkah 2: Buat Migration dan Model

Selanjutnya, kita akan membuat migration dan model untuk tabel yang akan kita gunakan untuk menyimpan data Excel. Dalam contoh ini, kita akan membuat tabel “students” dengan kolom “name”, “email”, dan “phone”.

Buat migration dengan mengetikkan perintah berikut pada terminal:

php artisan make:migration create_students_table --create=students

Buka file migration yang baru saja dibuat dan tambahkan kolom seperti berikut:

public function up()
{
    Schema::create('students', function (Blueprint $table) {
        $table->id();
        $table->string('name');
        $table->string('email');
        $table->string('phone');
        $table->timestamps();
    });
}

Selanjutnya, jalankan migration dengan perintah berikut:

php artisan migrate

Selanjutnya, buat model “Student” dengan mengetikkan perintah berikut pada terminal:

php artisan make:model Student

Langkah 3: Buat Route dan Controller

Setelah membuat model, selanjutnya kita akan membuat route dan controller untuk mengelola data.

Buka file “web.php” dan tambahkan route seperti berikut:

Route::get('students/import', 'StudentController@import');
Route::post('students/import_parse', 'StudentController@importParse');
Route::post('students/import_process', 'StudentController@importProcess');

Selanjutnya, buat controller “StudentController” dengan mengetikkan perintah berikut pada terminal:

php artisan make:controller StudentController

Buka file “StudentController.php” dan tambahkan method “import”, “importParse”, dan “importProcess” seperti berikut:

class StudentController extends Controller
{
    public function import()
    {
        return view('students.import');
    }

    public function importParse(Request $request)
    {
        $path = $request->file('excel')->getRealPath();
        $data = Excel::load($path, function($reader) {})->get();
        return view('students.import_parse', compact('data'));
    }

    public function importProcess(Request $request)
    {
        $data = $request->input('data');
        foreach($data as $row) {
            $student = new Student;
            $student->name = $row['name'];
            $student->email = $row['email'];
            $student->phone = $row['phone'];
            $student->save();
        }
        return redirect('students')->with('success', 'Data imported successfully.');
    }
}

Langkah 4: Buat View

Terakhir, kita akan membuat view untuk mengunggah dan menampilkan data dari file Excel.

Buat file “import.blade.php” dan tambahkan code berikut:

<form action="{{ url('students/import_parse') }}" method="post" enctype="multipart/form-data">
    {{ csrf_field() }}
    <div class="form-group">
        <label for="excel">Select Excel File:</label>
        <input type="file" name="excel" class="form-control">
    </div>
    <button class="btn btn-primary">Import</button>
</form>

Buat file “import_parse.blade.php” dan tambahkan code berikut:

<form action="{{ url('students/import_process') }}" method="post">
    {{ csrf_field() }}
    <table class="table table-bordered">
        <thead>
            <tr>
                <th>Name</th>
                <th>Email</th>
                <th>Phone</th>
            </tr>
        </thead>
        <tbody>
            @foreach($data as $row)
            <tr>
                <td>{{ $row['name'] }}</td>
                <td>{{ $row['email'] }}</td>
                <td>{{ $row['phone'] }}</td>
            </tr>
            @endforeach
        </tbody>
    </table>
    <input type="hidden" name="data" value="{{ json_encode($data) }}">
    <button class="btn btn-primary">Import</button>
</form>

Terakhir, tambahkan route untuk menampilkan view “import” pada file “web.php” seperti berikut:

Route::get('students/import', 'StudentController@import');

Setelah itu, kita dapat menjalankan aplikasi dengan perintah “php artisan serve” pada terminal dan mengakses halaman “localhost:8000/students/import” untuk mengunggah data dari file Excel.

Dengan demikian, kita telah berhasil memasukkan data dari Excel ke MySQL dengan menggunakan Laravel.

FAQs: Cara Memasukkan Data dari Excel ke MySQL Laravel

FAQs: Cara Memasukkan Data dari Excel ke MySQL Laravel

1. Apa itu Laravel?

Laravel adalah sebuah framework PHP yang digunakan untuk membangun aplikasi web.

2. Apa itu MySQL?

MySQL adalah sebuah sistem manajemen basis data relasional yang digunakan untuk menyimpan dan mengambil data.

3. Apa yang dibutuhkan untuk memasukkan data dari Excel ke MySQL Laravel?

Untuk memasukkan data dari Excel ke MySQL Laravel diperlukan modul PHPExcel, yang bisa diinstal melalui Composer, dan perlu mengetahui struktur tabel di MySQL.

4. Bagaimana cara menginstal modul PHPExcel?

Modul PHPExcel dapat diinstal melalui Composer dengan menjalankan perintah composer require phpoffice/phpexcel

composer require phpoffice/phpexcel

5. Bagaimana cara memasukkan data dari Excel ke MySQL Laravel?

Langkah-langkahnya adalah:

Baca file Excel menggunakan PHPExcel.
Buat koneksi ke database MySQL.
Looping data dari file Excel dan masukkan ke tabel MySQL.

  1. Baca file Excel menggunakan PHPExcel.
  2. Buat koneksi ke database MySQL.
  3. Looping data dari file Excel dan masukkan ke tabel MySQL.

6. Apa yang harus diperhatikan dalam memasukkan data dari Excel ke MySQL Laravel?

Perlu memperhatikan struktur tabel di MySQL dan pastikan data yang dimasukkan ke MySQL sudah diolah dan valid.

7. Apa yang harus dilakukan jika terjadi error dalam memasukkan data dari Excel ke MySQL Laravel?

Periksa koneksi ke database MySQL dan pastikan struktur tabel di MySQL sudah benar, serta pastikan data yang dimasukkan sudah valid dan sesuai dengan struktur tabel.

Jangan lupa untuk selalu backup data sebelum melakukan proses memasukkan data dari Excel ke MySQL. Semoga berhasil!

CRUD LARAVEL 8 -PART 14- IMPORT DATA EXCEL KEDALAM DATABASE | Video

Leave a Reply

Your email address will not be published. Required fields are marked *