prestashop添加组合内部服务器错误

时间:2015-08-21 16:42:23

标签: php prestashop combinations

我创建了一个产品,并尝试为他分配组合(颜色/大小)。

但只有第一个组合成功添加!然后我收到内部服务器错误(500)

我使用的是什么:

$combination =
'<?xml version="1.0" encoding="utf-8"?>
<prestashop>
    <combination>
        <id xmlns=""></id>
        <id_product xmlns="">'.$id.'</id_product>
        <quantity xmlns="">' . $quantity . '</quantity>
        <supplier_reference xmlns="">Inditex</supplier_reference>
        <price xmlns="">' . $price . '</price>
        <wholesale_price xmlns="">' . $price . '</wholesale_price>
        <minimal_quantity xmlns="">1</minimal_quantity>
        <default_on xmlns="">1</default_on>

        <associations xmlns="">
            <product_option_values xmlns="">
                <product_option_value><id>'.$color_id.'</id></product_option_value>
                <product_option_value><id>'.$size_id.'</id></product_option_value>
            </product_option_values>
        </associations>
    </combination>
</prestashop>';
$response = curlCall($url . '/api/combinations/products/'.$id, $combination, 'POST', $api_key);
$load_string = simplexml_load_string($response);
$combination_id = $load_string->combination->id;

只有当产品没有组合时,该代码才能正常工作。 (color_id和size_id已经过验证,我不会使用相同的ID)

请救我:)

2 个答案:

答案 0 :(得分:0)

我使用其他方法,这很好用:

MAX

答案 1 :(得分:0)

对于阅读此问题的其他人来说,方法的改变不是解决方案。问题是你使用的网址。

第一种和第二种方法是一样的,只有不同的方法来构建xml,唯一的区别就是url:

  • $网址。'/ API /组合/产品/'.$ ID

Vs以上。

  • $网址。'/ API /组合

第一个url不会在Prestashop Web服务中调用有效资源。 我建议使用库https://github.com/PrestaShop/PrestaShop-webservice-lib/blob/master/PSWebServiceLibrary.php来帮助防止出现这种情况。