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.