eccubeはお作法が多い。
LC_Page_cart.php
//////////////////////////////////// 支払い履歴 確認 ////////////////////////////////////
// 支払い状況チェック(DBのorderテーブルをチェック)
$objCustomer = new SC_Customer_Ex();
$customer_id = $objCustomer->getValue('customer_id');
$this->result_order_flg = $objCustomer->getOrderHist($customer_id); // true:支払済、false:未払
// 支払い履歴がなく、カートセッションに商品が入っていない場合、カートに追加する。
if(empty($this->result_order_flg)){
//////////////////// cart追加
$objCartSess = new SC_CartSession_Ex();
$cartList = $objCartSess->chkCartProduct(PRODUCT_TYPE_ID_MANNRIKI);
if(empty($cartList)){
$objCartSess = new SC_CartSession_Ex();
$quantity = 1; // 量:無制限
$objCartSess->addProduct(PRODUCT_CLASS_ID_MANNRIKI, $quantity);
}
///////////////////////////////////////////////////////
SC_Customer.php
// 会員の支払履歴を取得(最新の一件)
public function getOrderHist($customer_id)
{
$objQuery =& SC_Query_Ex::getSingletonInstance();
$arrOrderSummary = $objQuery->getRow('*','dtb_order','customer_id = ? AND del_flg = 0 AND status <> ?',array($customer_id,ORDER_CANCEL));
//var_dump($arrOrderSummary);
if(empty($arrOrderSummary)){
// 未支払
return false;
}else{
// 支払済
return true;
}
}