現在、クライアントが購入すると、購入時にデータベースにアフィリエイトIDを記録する専用カートを作成中です。Post Affiliate ProAPIを使用してアフィリエイトID/名前を取得するために次のコードを作成しました。
include ("affiliate/api/PapApi.class.php");
$session = new Gpf_Api_Session("https://www.elitespecialtymeats.com/affiliate/scripts/server.php");
if(!$session->login("user", "password")){ die("Cannot login. Message: ".$session->getMessage()); }
$clickTracker = new Pap_Api_ClickTracker($session);
try {
$clickTracker->track();
$clickTracker->saveCookies();
if ($clickTracker->getAffiliate() != null){ $affid=$clickTracker->getAffiliate()->getValue('username'); }
else{ $affid=''; }
}catch (Exception $e){
$affid='';
}
そのIDを購入に追加する最良の方法を見つけようとしています。購入をPAPに記録するtpl_checkout_success_default.phpに追加するのが最善だと思います。私の問題は、コードを実装するためのシステムについて十分に知らないことです。
私の最善の推測は
$db->Execute("UPDATE ".TABLE_ORDERS_TOTAL." SET affid='$affid' where orders_id = '".(int)$orders->fields['orders_id']."' AND class in ('ot_coupon', 'ot_gv', 'ot_subtotal', 'ot_group_pricing', 'ot_quantity_discount')");
これは機能しますか、それとも私は何かを台無しにしますか?