2017-01-02 4 views
2

Ich möchte Kostümdaten in Warenkorb Artikel speichern, ich habe Prüfdaten wurde in Datenbank gespeichert, aber wenn ich dann bekomme, wird es null zurückgeben.So fügen Sie benutzerdefinierte Daten im Warenkorb in Magento

Ich habe ein Ereignis hinzugefügt, um Kostümdaten in den Warenkorb zu legen.

Observer.php

public function checkoutCartProductAddAfter(Varien_Event_Observer $observer){ 
    try { 
     $data = $this->_getRequest()->getPost(); 
     $item = $observer->getEvent()->getQuoteItem(); 
     $item->setData('customize_data', $data['customize_data']); 
     $item->setData('customize_image', $data['customize_image']); 
     $item->save(); 
    } 
    catch (Exception $e) { 
     Mage::getSingleton('adminhtml/session')->addError($e->getMessage()); 
    } 
} 

Ich möchte Bild in Wagenseite ändern, damit ich unter Datei erstellen haben.

<?php 
class ProductCustomizer_ProductCustomizer_Block_Checkout_Cart_Item_Renderer extends Mage_Checkout_Block_Cart_Item_Renderer{ 
    public function getProductThumbnail() 
    { 
     $customize_data = $this->getItem()->getData('customize_data'); 
     $customize_image = $this->getItem()->getData('customize_image'); 
     Mage::log('customize_data'); 
     Mage::log($customize_data); 
     Mage::log('customize_image'); 
     Mage::log($customize_image); 
     if (!empty($customize_image)) { 
      return $customize_image; 
     } else { 
      return parent::getProductThumbnail(); 
     } 
    } 
} 

I unten Protokolle in system.log Datei

2017-01-02T06:38:29+00:00 DEBUG (7): customize_data 
2017-01-02T06:38:29+00:00 DEBUG (7): 
2017-01-02T06:38:29+00:00 DEBUG (7): customize_image 
2017-01-02T06:38:29+00:00 DEBUG (7): 
+0

hallo haben Sie neue Spalte in Zitat Postentabelle – faizanbeg

+0

Nein, hinzugefügt habe ich nicht hinzugefügt neue Spalte –

+0

es hinzufügen, speichern Daten in sie, dann können Sie es – faizanbeg

Antwort

2

Sie bin immer diese Sache tun können, um eine neue Spalte in Positionstabelle ohne Zugabe,

Observer.php

public function checkoutCartProductAddAfter(Varien_Event_Observer $observer){ 
    try { 
      $data = Mage::app()->getRequest()->getPost(); 

      $item = $observer->getQuoteItem(); 

      $additional_info = $item->getadditional_info(); 
      $additional_info = unserialize($additional_info); 

      $additional_info['customize']['customize_data'] = $data['customize_data']; 
      $additional_info['customize']['customize_image'] = $data['customize_image']; 

      $item->setAdditionalInfo(serialize($additional_info)); 

      $item->save(); 
     } 
     catch (Exception $e) { 
      Mage::getSingleton('adminhtml/session')->addError($e->getMessage()); 
     } 
} 

CART Seite:

class ProductCustomizer_ProductCustomizer_Block_Checkout_Cart_Item_Renderer extends Mage_Checkout_Block_Cart_Item_Renderer{ 
    public function getProductThumbnail() 
    { 
    $additional_info = $this->getItem()->getData('additional_info'); 
    $additional_info = unserialize($additional_info); 
    if(isset($additional_info['customize']) && $additional_info['customize']){ 
     Mage::log('customize_data'); 
     Mage::log($additional_info['customize']['customize_data']); 
     Mage::log('customize_image'); 
     Mage::log($additional_info['customize']['customize_image']); 

     return $additional_info['customize']['customize_image']; 
    } 
    return parent::getProductThumbnail(); 
    } 
} 
+0

Dank bekommen es funktioniert gut. –

Verwandte Themen