Ich arbeite mit Prestashop 1.6 und habe ein voll funktionierendes Setup mit dem Webservice (API) und Prest5ashop, aber ich habe ein kleines Problem mit dem Warenkorb hinzufügen Mechanismus.Prestashop Webservice: Mehrere Einkaufswagen Zeilen
Grundsätzlich gehe ich, um meinen Warenkorb zu erstellen, aber wenn ich jedes nachfolgende Element mache, füge ich hinzu (cart_row) unter (cart_rows) scheint falsch und wird daher nicht hinzugefügt.
Mein Code ist:
$product_list = array(
"1" => array("id_product" => "219", "quantity" => "1"),
"2" => array("id_product" => "219", "quantity" => "1"),
"3" => array("id_product" => "219", "quantity" => "3")
);
$i = 0;
foreach ($product_list as $product) {
$xml->cart->associations->cart_rows->cart_row[$i]->id_product = $product['id_product'];
$xml->cart->associations->cart_rows->cart_row[$i]->quantity = $product['quantity'];
$i++;
}
$opt = array('resource' => 'carts');
$opt['postXml'] = $xml->asXML();
echo '<pre>'; print_r($opt); echo '</pre>';
$xml = $webService->add($opt);
$id['cart'] = $xml->cart->id; // ID of created cart
Also im Grunde in dem obigen Beispiel Produkt 1 wird hinzugefügt, aber 2 und 3 nicht. Als ich in der XML-Antwort von Prestashop sehe ich bemerken dies:
<associations>
<cart_rows>
<cart_row>
<id_product>219</id_product>
<id_product_attribute/>
<id_address_delivery/>
<quantity>1</quantity>
</cart_row>
<cart_row><id_product>219</id_product><quantity>1</quantity></cart_row><cart_row><id_product>219</id_product><quantity>3</quantity></cart_row></cart_rows>
</associations>
ich den zweiten und dritten Artikel hinzugefügt malformed scheinen, aber ich verstehe nicht, warum. Kann jemand aushelfen?
Danke!
Das war genau das Problem, vielen Dank. Obwohl der Webdienst keinen gültigen Fehler zurückgegeben hat, war das Problem wiederholte Produkt-IDs. Der Prestashop-Webservice fügt das Produkt nicht hinzu, wenn sich die IDs wiederholen oder nicht gültig sind, und gibt dies auch bei aktiviertem Debug nicht als Fehler zurück. –