를 표시하는 방법에서 발생한 오류는 사용자 정의 컨트롤러에서 보기 cart 페이지?

magento.stackexchange https://magento.stackexchange.com//questions/84348

문제

내가 만든 사용자 정의 컨트롤러를 추가하는 여러 항목에서 그리드 뷰 카트 모니다.

작-는 문제입니다 성공과 오류 메시지가 표시되지 않에 view cart 페이지입니다.

여기서 컨트롤러:

<?php

    class BigBlockStudios_UpdateCart_ManageController extends Mage_Core_Controller_Front_Action {

        // add multiple products to the cart
        public function multipleProdAddAction() {

            $redirect = isset($_POST['redirect']) ? $_POST['redirect'] : 'checkout/cart';

            $success = '';

            $errors = '';

            $cart = Mage::helper('checkout/cart')->getCart();

            $items = $_POST['data'];

            foreach($items as $key => $item){

                $sku = $item['sku'];

                $qty = $item['qty'];

                $id = Mage::getModel('catalog/product')->getIdBySku($sku);

                if(!$id || $qty <= 0) {

                    unset($items[$key]);

                }else{

                    try {

                        $params = array('qty' => $qty);

                        $id = Mage::getModel('catalog/product')->getIdBySku($sku);

                        $product = Mage::getModel('catalog/product')->load($id);

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

                        $success .= $product->getName(). " is successfully added into cart <br />";

                    }catch(Exception $e) {

                        $errors .= $e->getMessage() . '<br />';

                    }

                }

            }

            $cart->save();

            if(strlen($success) > 1) {
                Mage::getSingleton('core/session')->addSuccess(Mage::helper('checkout')->__($success));
            }

            if(strlen($errors) > 1){
                Mage::getSingleton('core/session')->addError(Mage::helper('checkout')->__($errors));
            }

            $this->_redirect($redirect);

        } // multipleProdAddAction()

    } // controller

?>

View cart 페이지의 메시지를 표시하는 경우 추가 항목에서는 기본 제품 페이지,나는 성공 메시지가 표시됩니다.

방법은 무엇입의 하이?

도움이 되었습니까?

해결책

지금 당신이 메시지를 설정에서 core/session.이 있을 설정하는 메시지 checkout/session 에서 그것을 얻기 위하여 결제 페이지가 나와 있습니다.

Mage::getSingleton('checkout/session')->addError(Mage::helper('checkout')->__($errors));

Magento 는 메시지를 설정은 체크아웃 세션을 추가하는 동안 제품을 cart.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 magento.stackexchange
scroll top