Membuat Fitur Register dengan Laravel

Halo, Sobat Jagoan! Setelah belajar membuat fitur login dan logout di artikel seri Laravel sebelumnya, di artikel kali ini akan belajar membuat fitur register atau pendaftaran. Dengan fitur ini, pengguna baru bisa langsung mendaftarkan diri ke dalam aplikasi. Data yang dimasukkan dalam form registrasi akan digunakan untuk proses autentikasi ketika pengguna melakukan login ke aplikasi. Simak, kuyy!

Oh iya, Sob, artikel ini akan memanfaatkan tabel users bawaan Laravel untuk membuat fitur register, melanjutkan apa yang sudah dibuat pada artikel Membuat Fitur Login dan Logout dengan Laravel. Jadi, pastikan kamu memahami konsep implementasinya dan sudah menyiapkan aplikasi Laravel di lokal kamu.

Step 1: Membuat Controller

Buat controller bernama ‘RegisterController’ menggunakan perintah artisan.

				
					php artisan make:controller RegisterController
				
			

Kemudian buka file RegisterController.php untuk menambahkan function yang menangani proses pendaftaran akun.

				
					public function show() {
        return view('formRegister');
    }

    public function register(Request $request) {
        // Validasi Input
        $request->validate([
            'name'     => 'required|string|max:255',
            'email'    => 'required|email|unique:users,email',
            'password' => 'required|string|min:8|confirmed',
        ]);

        // Buat User Baru
        User::create([
            'name'     => $request->name,
            'email'    => $request->email,
            'password' => bcrypt($request->password),
        ]);

        return redirect('/login')->with('status', 'Registrasi berhasil! Silakan login untuk melanjutkan.');
    }
				
			

Jangan lupa, menambahkan import yang mengarah ke model User.php dan library Auth Laravel.

				
					use App\Models\User;
				
			

Step 2: Membuat Tampilan Register

Buat tampilan halaman register pada resources/views/ dengan nama ‘formRegister.blade.php’.

<!DOCTYPE html>

<html lang=”en”>

<head>

    <meta charset=”UTF-8″>

    <meta name=”viewport” content=”width=device-width, initial-scale=1.0″>

    <title>Register</title>

    <link href=”https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css” rel=”stylesheet”>

</head>

<body>

    <div class=”container d-flex justify-content-center align-items-center vh-100″>

        <div class=”card p-4 shadow” style=”width: 400px;”>

            <h3 class=”text-center mb-4″>Register</h3>

            <form action=”/register” method=”POST” class=”mb-3″>

                @csrf

                <!– Name –>

                <div class=”mb-3″>

                    <label for=”name” class=”form-label”>Nama</label>

                    <input type=”text” name=”name” class=”form-control” id=”name” required>

                    @error(‘name’)

                        <div class=”text-danger”>{{ $message }}</div>

                    @enderror

                </div>

                <!– Email –>

                <div class=”mb-3″>

                    <label for=”email” class=”form-label”>Email</label>

                    <input type=”email” name=”email” class=”form-control” id=”email” required>

                    @error(‘email’)

                        <div class=”text-danger”>{{ $message }}</div>

                    @enderror

                </div>

                <!– Password –>

                <div class=”mb-3″>

                    <label for=”password” class=”form-label”>Password</label>

                    <input type=”password” name=”password” class=”form-control” id=”password” required>

                    @error(‘password’)

                        <div class=”text-danger”>{{ $message }}</div>

                    @enderror

                </div>

                <!– Confirm Password –>

                <div class=”mb-3″>

                    <label for=”password_confirmation” class=”form-label”>Konfirmasi Password</label>

                    <input type=”password” name=”password_confirmation” class=”form-control” id=”password_confirmation” required>

                </div>

                <!– Submit –>

                <button type=”submit” class=”btn btn-success w-100″>Register</button>

            </form>

 

            <div class=”text-center”>

                <p>Sudah punya akun? <a href=”{{ route(‘login’) }}”>Login di sini</a></p>

            </div>

 

        </div>

    </div>

</body>

</html>

Step 3: Menambahkan Route Register

Atur rute aplikasi untuk mengakses halaman register dan untuk memproses input pendaftaran pengguna di folder routes/web.php

				
					use App\Http\Controllers\RegisterController;

Route::get('/register', [RegisterController::class, 'show'])->name('register');
Route::post('/register', [RegisterController::class, 'register']);

				
			

Step 4: Menambahkan Tombol Register

Pengguna akan mengakses halaman login dengan url http://127.0.0.1:8000/login ketika pertama kali membuka website. Kamu perlu memberikan opsi bagi pengguna yang ingin melakukan registrasi di halaman Login. Jadi, modifikasi halaman login dengan memberikan tombol registrasi.

				
					<div class="text-center mt-3">
    <p>Belum punya akun? <a href="{{ route('register') }}">Daftar di sini</a></p>
</div>

				
			

Kamu bisa menyesuaikan kode di atas sesuai kebutuhan sistem kamu.

Step 5: Uji Coba Form Register

Akses halaman login aplikasi kamu, lalu klik link Daftar di sini untuk melakukan pendaftaran akunmu.

1-klik-daftar-akun

Kemudian coba lengkapi form pendaftaran akun untuk mendaftarkan pengguna baru ke sistem aplikasi.

2-coba-daftar-akun-baru-buat-form-register-laravel

Kalau ada yang masih bikin bingung, jangan ragu hubungi Tim Support Jagoan Hosting via Live Chat atau Open Ticket, Sob!

Related Posts
Tutorial Upload Aplikasi Laravel ke Hosting Melalui cPanel

Pengantar Hai, Sob! Buat kamu semua para developer yang lagi kepo gimana sih cara Upload Aplikasi Laravel ke Hosting? Nah, Read more

Tutorial Install Laravel di cPanel Jagoan Hosting

Hai Sob! Buat kamu semua para developer yang lagi kepo gimana sih cara Upload Aplikasi Laravel ke Hosting? Nah, tutorial Read more

Cara Install Laravel Dari Clone Git di cPanel

Halo Sob! Bagi developer handal seperti kamu, mendengar istilah laravel dan clone git adalah sesuatu yang familiar bukan? Nah, kali Read more

Cara Membuat Storage Link pada Laravel

Hai Sob! Sebagai seorang developer yang menggunakan laravel, kamu pasti tahu dong bahwa salah satu keuntungan menggunakan framework laravel adalah Read more