2013-12-16 85 views
0

我試圖開發一個PHP代碼,將採取階增量編號從舊秩序,將與產品定製選項一起創建具有相同產品的新訂單(如果有的話) 。 即使有可能通過查詢字符串添加產品,但通過我無法添加自定義選項,抓取標準也沒問題。購物車頁面顯示:需要產品定製選項。編程添加多個產品具有自定義選項

我認爲(不知道),我甚至成功地通過SOAP API添加產品的定製選項,但是當我重定向到購物車它顯示一個空的購物車。

我是個初學者,所以請忽略任何愚蠢的,如果它的存在。 :d 與查詢字符串的代碼如下:

$form_key = Mage::getSingleton('core/session')->getFormKey(); 
$arrProducts = array(
/*array 
(
"product" => "3", 
"qty" => 7 
),*/ 
array 
(
"product" => "1", 
"qty" => 3, 
"options" => array 
       (
        2 => array(
          "date" => "11/12/13", 
          "date_internal" => "2013-12-11 00:00:00" 
          ), 
        1 => "1" 
       ) 
header('Location: '.Mage::getUrl('checkout/cart/add/form_key/'.$form_key.'/', $arrProduct)); 

所以,這個指導與該產品的頁面,但要我選擇的產品選項。 當我使用上面評論的其他產品時,它是成功的。

即使我現在可以添加一個產品沒有自定義(產品使用id =「3」)在車的選擇。代碼如下:

<?php 
require('../../../app/Mage.php'); //include mage.php 
Mage::app(); 
Mage::getSingleton('core/session', array('name' => 'frontend')); 
$form_key = Mage::getSingleton('core/session')->getFormKey(); 
//echo $form_key; 
$cart = Mage::getSingleton('checkout/cart'); 

$product = new Mage_Catalog_Model_Product(); 

$product->load(2); 
//$product->setProductOptions(); 

$params = array(

      array 

      (

      "product" => "3", 

      "qty" => 1 

      ), 


      array 
       (
       "product" => "2", 

       "qty" => 2, 

       "options" =>array 
           (
            2 => array 
              (
                  "date" => "11/12/2013", 
                "date_internal"=> "2013-12-11 00:00:00" 
               ), 

            1 => "1" 

            ) 
        ) 
       ); 



    $cart->addProduct($product, $params); 

    $cart->save(); 

    Mage::getSingleton('checkout/session')->setCartWasUpdated(true); 

    header('Location:http://111.111.1.1/magento/checkout/cart'); 
    ?> 

,但它不與定製選項中的任何產品(產品使用id =「2」)工作。 錯誤消息:

致命錯誤:未收集的異常'Mage_Core_Exception'帶消息'請指定產品所需的選項(s)'。在C:\ xampp \ htdocs \ magento \ app \ Mage.php中:594堆棧跟蹤:#0 C:\ xampp \ htdocs \ magento \ app \ code \ core \ Mage \ Checkout \ Model \ Cart.php(284):法師:: throwException( '請註明...')#1 C:\ XAMPP \ htdocs中\ Magento的\ pratmagento \面板\命令\ try2addtocart.php(53):Mage_Checkout_Model_Cart-> addProduct命令(對象(Mage_Catalog_Model_Product),陣列)# 2 {主}扔在C:\ XAMPP \ htdocs中\ Magento的\應用\上線594

+0

所以你想複製最後一個訂單(產品+自定義選項),並增加一個訂單ID? – pablofiumara

+0

是的絕對......我想,並不能設置自定義選項的值。 –

+0

其中一個自定義選項是日期類型。在此先感謝.... –

回答

0

它設置website_ids產品所需Mage.php。

$product->setWebsiteIds(array(Mage::app()->getStore(true)->getWebsite()->getId())); 
相關問題