WHMCS API的AddOrder问题

时间:2018-08-09 04:12:55

标签: php yii2 whmcs

我正在使用WHMCS本地API添加新订单。除domainrenewals字段外,其他一切正常。

if(!empty($_POST['renewalids']))
    {   
        $postarray = array();
        $postarray['action'] = 'addorder';
        $postarray['clientid'] = \Yii::$app->user->identity->id;
        $postarray["paymentmethod"] = "paypal";

        foreach($_POST['renewalids'] as $key=>$id)
        {
            $priceselected = $_POST['renewalperiod'][$key];
            $price = explode('_',$priceselected);   
            $postarray["domainrenewals[".$id."]"] = $price[0]; #renew for 1 year
            /*$postarray["domainrenewals"][$id] = $price[0];*/                       
        }

        $orderDetails = WHMCSAPI::callApi($postarray);

它给我错误“没有商品添加到购物车,所以无法继续订购”。 你有什么建议吗?

1 个答案:

答案 0 :(得分:1)

我认为您可能想再看看addorder的文档,因为您构建$postarray["domainrenewals"]值的方式不正确。分配$postarray["domainrenewals"]应该看起来像这样:

$postarray["domainrenewals"]['example.com'] = 1; //renew example.com for 1 year

由于某种原因,您似乎在使用ID代替域名,但我认为这不起作用。