Membuat Sistem Referral Affiliate Sederhana dengan PHP dan MySQL

Membuat Sistem Referral Affiliate Sederhana dengan PHP dan MySQL

Dalam artikel ini, kita akan membahas cara membuat sistem referral affiliate sederhana menggunakan PHP dan MySQL. Sistem ini digunakan untuk meregisterkan kode referral pada saat transaksi dan menghitung komisi yang harus dibayar ke afiliasi.

Langkah 1: Membuat Basis Data

Pertama-tama, kita perlu membuat basis data untuk sistem referral affiliate. Kita akan menggunakan MySQL sebagai basis data. Pastikan Anda memiliki koneksi MySQL di komputer Anda.

// (F) SETTINGS - CHANGE THESE TO YOUR OWN!
define("DB_HOST", "localhost");
define("DB_NAME", "test");
define("DB_CHARSET", "utf8mb4");
define("DB_USER", "root");
define("DB_PASSWORD", "");
define("REF_VALID", 86400); // 24 hours = 86400 secs

Langkah 2: Membuat Class Referral

Kita perlu membuat class Referral untuk menghandle referral affiliate. Class ini akan memiliki fungsi set() untuk meregisterkan kode referral dan commission() untuk menghitung komisi yang harus dibayar ke afiliasi.

class Referral {
 public function __construct() {
 // (G) START SEESSION + CREATE NEW REFERRAL OBJECT
 session_start();
 $this->REF = new Referral();
 }
 
 public function set() {
 // (A, B, G) On creating $REF = new Referral(), the constructor automatically connects to the database. The destructor closes the connection.
 if (!isset($_GET["ref"])) {
 return false;
 }
 
 $c = $_GET["ref"];
 $t = time();
 
 // (E3) UP TO YOU - KEEP REFERRAL CODE AFTER SALES?
 unset($_SESSION["referral"]);
 $_SESSION["referral"] = ["c" => $c, "T" => $t];
 return true;
 }
 
 public function commission($order_id, $comm_amount) {
 // (C) query() A helper function to run an SQL query.
 $query = "INSERT INTO referral_commissions (affiliate_code, order_id, comm_amount) VALUES (?,?,?)";
 [$_SESSION["referral"]["c"], $comm_amount, $oid]
 );
 
 // (E3) UP TO YOU - KEEP REFERRAL CODE AFTER SALES?
 unset($_SESSION["referral"]);
 return true;
 }
}

Langkah 3: Membuat Halaman Penjualan

Kita perlu membuat halaman penjualan yang akan meregisterkan kode referral pada saat transaksi. Halaman ini juga akan menampilkan kode referral yang telah diregisterkan.

// (A) REGISTER REFERRAL CODE (IF ANY)
require "2-lib.php";
$REF->set();

// (B) HTML SALES PAGE ?>
<img src="black.png">
<p>Sales pitch here - Buy now and get this that everything!</p>
 
<div class="note"><?php
if (isset($_SESSION["referral"])) {
 echo "Current referral - ";
 print_r($_SESSION["referral"]);
} else {
 echo "No referral set - Please access this page with 3a-sales.php?ref=johndoe";
}
?></div>
 
<form method="post" action="3b-checkout.php">
 <input type="submit" value="BUY NOW!">
</form>

Langkah 4: Membuat Halaman Checkout

Kita perlu membuat halaman checkout yang akan menghitung komisi yang harus dibayar ke afiliasi. Halaman ini juga akan meregisterkan transaksi dan menghitung komisi.

// (A) DO YOUR PAYMENT & ORDER PROCESSING
// LET'S SAY PAYMENT + CHECKOUT OK - ORDER ID 999, COMMISSION AMOUNT OWED IS $87.65
$orderID = 999;
$commission = 87.65;
 
// (B) REGISTER COMMISSION
require "2-lib.php";
$pass = $REF->commission($orderID, $commission);
echo $pass ? "ok" : $REF->error ;

IDEA-IDEA

Sistem referral affiliate sederhana ini masih jauh dari sistem yang profesional. Kita perlu meningkatkan fitur-fiturnya seperti:

  • Membuka untuk afiliasi publik?
  • Membuat portal afiliasi untuk melihat/lain sales reports?
  • Menyelesaikan aturan-aturan afiliasi Anda sendiri – Berapa lama kode referral berlaku? Siapa yang mendapatkan prioritas? Atau memungkinkan kode referral tetap valid setelah transaksi?

Semoga artikel ini dapat membantu Anda dalam membuat sistem referral affiliate sederhana menggunakan PHP dan MySQL.