Teknologi

Membuat Script Member Afiliasi Dengan Sistem Poin Dalam Bahasa Laravel

Pada artikel berikut ini saya akan menginformasikan Cara Membuat Script Member Afiliasi Dengan Sistem Poin Dalam Bahasa Laravel. Berikut ini adalah contoh script yang dapat Anda gunakan untuk mengimplementasikan sistem afiliasi dengan poin dalam aplikasi Laravel:

  1. Buat tabel baru di database Anda untuk menyimpan data afiliasi. Tabel ini harus memiliki setidaknya kolom-kolom berikut:
  • id: kolom primary key, otomatis diincrement
  • user_id: foreign key ke tabel users, menunjukkan user yang terafiliasi
  • referral_code: kode unik yang dapat digunakan oleh calon afiliasi untuk mendaftar melalui link referral
  • referral_count: jumlah orang yang telah mendaftar sebagai afiliasi melalui link referral user ini
  • points: jumlah poin yang telah dikumpulkan user ini dari program afiliasi
  1. Buat model baru untuk tabel afiliasi dengan menjalankan perintah berikut:
php artisan make:model Affiliate -m

Model ini akan digunakan untuk mengelola data afiliasi di dalam aplikasi.

  1. Buat migration untuk tabel afiliasi dengan menjalankan perintah berikut:
php artisan make:migration create_affiliates_table

Edit migration yang baru dibuat untuk menambahkan kolom-kolom yang diperlukan di tabel afiliasi, seperti yang telah dijelaskan sebelumnya.

  1. Jalankan migration untuk membuat tabel afiliasi di database:
php artisan migrate
  1. Buat route baru untuk mendaftar sebagai afiliasi. Route ini bisa dibuat di routes/web.php dengan menambahkan kode berikut:
Route::get('/affiliate/register/{referral_code?}', 'AffiliateController@showRegistrationForm')->name('affiliate.register');
Route::post('/affiliate/register', 'AffiliateController@register')->name('affiliate.register');

Route pertama akan menampilkan form registrasi afiliasi ke user, sementara route kedua akan menangani proses registrasi yang dilakukan user.

  1. Buat controller baru untuk menangani route-route yang telah dibuat. Controller ini bisa dibuat dengan menjalankan perintah berikut:
php artisan make:controller AffiliateController
  1. Tambahkan fungsi showRegistrationForm() ke dalam controller yang baru dibuat. Fungsi ini akan menampilkan form registrasi afiliasi ke user. Anda bisa menambahkan kode berikut ke dalam controller:
public function showRegistrationForm($referral_code = null)
{
$data = [
'referral_code' =>

return view('affiliate.register', $data);

Fungsi ini akan menampilkan view bernama ‘affiliate.register‘ ke user, dengan data yang disimpan dalam variabel $data. View tersebut bisa Anda buat di folder resources/views.

  1. Tambahkan fungsi register() ke dalam controller. Fungsi ini akan menangani proses registrasi afiliasi yang dilakukan user. Anda bisa menambahkan kode berikut ke dalam controller:
public function register(Request $request)
{
// validate input
$validatedData = $request->validate([
'referral_code' => 'nullable|exists:affiliates,referral_code',
'name' => 'required|string|max:255',
'email' => 'required|string|email|max:255|unique:users',
'password' => 'required|string|min:6|confirmed',
]);

// create user
$user = User::create([
'name' => $validatedData['name'],
'email' => $validatedData['email'],
'password' => Hash::make($validatedData['password']),
]);

// create affiliate
$affiliate = Affiliate::create([
'user_id' => $user->id,
'referral_code' => str_random(10),
'referral_count' => 0,
'points' => 0,
]);

// update referral count for referral affiliate
if ($request->has('referral_code')) {
$referral_affiliate = Affiliate::where('referral_code', $request->referral_code)->first();
$referral_affiliate->increment('referral_count');
}

// login user
Auth::login($user);

// redirect to home page
return redirect()->route('home');
}

Fungsi ini akan melakukan validasi input, membuat user baru, membuat afiliasi baru, menambah referral_count untuk afiliasi yang melakukan referral (jika ada), dan login user yang baru terdaftar. Setelah itu, user akan diarahkan ke halaman home.

  1. Buat view untuk form registrasi afiliasi di folder resources/views. Anda bisa menambahkan kode HTML berikut sebagai contoh:
@extends('layouts.app')

@section('content')
<div class="container">
<div class="row justify-content-center">
<div class="col-md-8">
<div class="card">
<div class="card-header">{{ __('Register as Affiliate') }}</div>

<div class="card-body">
<form method="POST

@csrf
@if (isset($referral_code))
<input type="hidden" name="referral_code" value="{{ $referral_code }}">
@endif
<div class="form-group row">
<label for="name" class="col-md-4 col-form-label text-md-right">{{ __('Name') }}</label>

<div class="col-md-6">
<input id="name" type="text" class="form-control @error('name') is-invalid @enderror" name="name" value="{{ old('name') }}" required autocomplete="name" autofocus>

@error('name')
<span class="invalid-feedback" role="alert">
<strong>{{ $message }}</strong>
</span>
@enderror
</div>
</div>

<div class="form-group row">
<label for="email" class="col-md-4 col-form-label text-md-right">{{ __('E-Mail Address') }}</label>

<div class="col-md-6">
<input id="email" type="email" class="form-control @error('email') is-invalid @enderror" name="email" value="{{ old('email') }}" required autocomplete="email">

@error('email')
<span class="invalid-feedback" role="alert">
<strong>{{ $message }}</strong>
</span>
@enderror
</div>
</div>

<div class="form-group row">
<label for="password" class="col-md-4 col-form-label text-md-right">{{ __('Password') }}</label>

<div class="col-md-6">
<input id="password" type="password" class="form-control @error('password') is-invalid @enderror" name="password" required autocomplete="new-password">

@error('password')
<span class="invalid-feedback" role="alert">
<strong>{{ $message }}</strong>
</span>
@enderror
</div>
</div>

<div class="form-group row">
<label for="password-confirm" class="col-md-4 col-form-label text-md-right">{{ __('Confirm Password') }}</label>

<div class="col-md-6">
<input id="password-confirm" type="password" class="form-control" name="password_confirmation" required autocomplete="new-password">
</div>
</div>

<div class="form-group row mb-0">
<div class="col-md-6 offset-md-4">
<button type="submit" class="btn btn-primary">
{{ __('Register') }}
</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
@endsection

View ini akan menampilkan form registrasi afiliasi ke user, yang terdiri dari input untuk nama, email, password, dan confirm password. Setelah user mengisi form dan mengklik tombol register, form akan dikirim ke route yang menangani proses registrasi.

Itulah contoh script yang dapat Anda gunakan untuk mengimplementasikan sistem afiliasi dengan poin dalam aplikasi Laravel. Semoga ini membantu!

\n

Route pertama akan menampilkan form registrasi afiliasi ke user, sementara route kedua akan menangani proses registrasi yang dilakukan user.<\/p>\n

    \n
  1. Buat controller baru untuk menangani route-route yang telah dibuat. Controller ini bisa dibuat dengan menjalankan perintah berikut:<\/li>\n<\/ol>\n
    php artisan make:controller AffiliateController<\/pre>\n<\/div>\n
      \n
    1. Tambahkan fungsi showRegistrationForm()<\/em> ke dalam controller yang baru dibuat. Fungsi ini akan menampilkan form registrasi afiliasi ke user. Anda bisa menambahkan kode berikut ke dalam controller:<\/li>\n<\/ol>\n
      public function showRegistrationForm($referral_code = null)\r\n{\r\n$data = [\r\n'referral_code' =>\r\n\r\nreturn view('affiliate.register', $data);<\/pre>\n

      Fungsi ini akan menampilkan view bernama ‘affiliate.register<\/em>‘ ke user, dengan data yang disimpan dalam variabel $data. View tersebut bisa Anda buat di folder resources\/views<\/em>.<\/p>\n

        \n
      1. Tambahkan fungsi register()<\/em> ke dalam controller. Fungsi ini akan menangani proses registrasi afiliasi yang dilakukan user. Anda bisa menambahkan kode berikut ke dalam controller:<\/li>\n<\/ol>\n
        public function register(Request $request)\r\n{\r\n\/\/ validate input\r\n$validatedData = $request->validate([\r\n'referral_code' => 'nullable|exists:affiliates,referral_code',\r\n'name' => 'required|string|max:255',\r\n'email' => 'required|string|email|max:255|unique:users',\r\n'password' => 'required|string|min:6|confirmed',\r\n]);\r\n\r\n\/\/ create user\r\n$user = User::create([\r\n'name' => $validatedData['name'],\r\n'email' => $validatedData['email'],\r\n'password' => Hash::make($validatedData['password']),\r\n]);\r\n\r\n\/\/ create affiliate\r\n$affiliate = Affiliate::create([\r\n'user_id' => $user->id,\r\n'referral_code' => str_random(10),\r\n'referral_count' => 0,\r\n'points' => 0,\r\n]);\r\n\r\n\/\/ update referral count for referral affiliate\r\nif ($request->has('referral_code')) {\r\n$referral_affiliate = Affiliate::where('referral_code', $request->referral_code)->first();\r\n$referral_affiliate->increment('referral_count');\r\n}\r\n\r\n\/\/ login user\r\nAuth::login($user);\r\n\r\n\/\/ redirect to home page\r\nreturn redirect()->route('home');\r\n}<\/pre>\n

        Fungsi ini akan melakukan validasi input, membuat user baru, membuat afiliasi baru, menambah referral_count<\/em> untuk afiliasi yang melakukan referral (jika ada), dan login user yang baru terdaftar. Setelah itu, user akan diarahkan ke halaman home.<\/p>\n

          \n
        1. Buat view untuk form registrasi afiliasi di folder resources\/views<\/em>. Anda bisa menambahkan kode HTML berikut sebagai contoh:<\/li>\n<\/ol>\n
          @extends('layouts.app')\r\n\r\n@section('content')\r\n<div class="container">\r\n<div class="row justify-content-center">\r\n<div class="col-md-8">\r\n<div class="card">\r\n<div class="card-header">{{ __('Register as Affiliate') }}<\/div>\r\n\r\n<div class="card-body">\r\n<form method="POST\r\n\r\n@csrf\r\n@if (isset($referral_code))\r\n<input type="hidden" name="referral_code" value="{{ $referral_code }}">\r\n@endif\r\n<div class="form-group row">\r\n<label for="name" class="col-md-4 col-form-label text-md-right">{{ __('Name') }}<\/label>\r\n\r\n<div class="col-md-6">\r\n<input id="name" type="text" class="form-control @error('name') is-invalid @enderror" name="name" value="{{ old('name') }}" required autocomplete="name" autofocus>\r\n\r\n@error('name')\r\n<span class="invalid-feedback" role="alert">\r\n<strong>{{ $message }}<\/strong>\r\n<\/span>\r\n@enderror\r\n<\/div>\r\n<\/div>\r\n\r\n<div class="form-group row">\r\n<label for="email" class="col-md-4 col-form-label text-md-right">{{ __('E-Mail Address') }}<\/label>\r\n\r\n<div class="col-md-6">\r\n<input id="email" type="email" class="form-control @error('email') is-invalid @enderror" name="email" value="{{ old('email') }}" required autocomplete="email">\r\n\r\n@error('email')\r\n<span class="invalid-feedback" role="alert">\r\n<strong>{{ $message }}<\/strong>\r\n<\/span>\r\n@enderror\r\n<\/div>\r\n<\/div>\r\n\r\n<div class="form-group row">\r\n<label for="password" class="col-md-4 col-form-label text-md-right">{{ __('Password') }}<\/label>\r\n\r\n<div class="col-md-6">\r\n<input id="password" type="password" class="form-control @error('password') is-invalid @enderror" name="password" required autocomplete="new-password">\r\n\r\n@error('password')\r\n<span class="invalid-feedback" role="alert">\r\n<strong>{{ $message }}<\/strong>\r\n<\/span>\r\n@enderror\r\n<\/div>\r\n<\/div>\r\n\r\n<div class="form-group row">\r\n<label for="password-confirm" class="col-md-4 col-form-label text-md-right">{{ __('Confirm Password') }}<\/label>\r\n\r\n<div class="col-md-6">\r\n<input id="password-confirm" type="password" class="form-control" name="password_confirmation" required autocomplete="new-password">\r\n<\/div>\r\n<\/div>\r\n\r\n<div class="form-group row mb-0">\r\n<div class="col-md-6 offset-md-4">\r\n<button type="submit" class="btn btn-primary">\r\n{{ __('Register') }}\r\n<\/button>\r\n<\/div>\r\n<\/div>\r\n<\/form>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n@endsection<\/pre>\n

          View ini akan menampilkan form registrasi afiliasi ke user, yang terdiri dari input untuk nama, email, password, dan confirm password. Setelah user mengisi form dan mengklik tombol register, form akan dikirim ke route yang menangani proses registrasi.<\/p>\n

          Itulah contoh script yang dapat Anda gunakan untuk mengimplementasikan sistem afiliasi dengan poin dalam aplikasi Laravel. Semoga ini membantu!<\/p>\n<\/div>\n<\/div>"}],"useSlideSources":true,"themeType":"font","prevText":"Prev","nextText":"Next","buttonWidth":0,"buttonWidth_post":0,"postUrl":"https:\/\/news.republikmurah.com\/membuat-script-member-afiliasi-dengan-sistem-poin-dalam-bahasa-laravel\/","postId":5736,"refreshAds":true,"refreshAdsEveryNSlides":"1","adRefreshingMechanism":"javascript","ajaxUrl":"https:\/\/news.republikmurah.com\/wp-admin\/admin-ajax.php","loopSlides":false,"scrollTopOffset":0,"hideNavigationOnFirstSlide":false,"isRtl":false,"prevFontIcon":"<\/span>","nextFontIcon":"<\/span>"}' data-theiaPostSlider-onChangeSlide='""'>

Related Articles

Leave a Reply

Back to top button
Hubungi Kami