Controller gibt nichts aus

class Shopware_Controllers_Frontend_CheckoutRequests extends Shopware_Controllers_Frontend_Checkout
{

    /**
     * /checkout/shippingPayment/
     */
    public function shippingPaymentAction()
    {
        $rawBody = $this->Request()->getRawBody();
        $params = json_decode($rawBody, true); // jsonbody decodieren als array}
        
        HIER NIX $params :-(


        return;
    }
}

Bin ich heute mit dem falschen Bein aufgestanden oder warum bekomme ich rein garnichts zurück im Checkout bei ShippingPayment?

Hi,

was steht denn im RawBody? Ist das gültiges JSON? Vermutlich produziert json_decode einen Fehler, den du auslesen musst: http://php.net/manual/de/function.json-last-error-msg.php

Besten Gruß,

Daniel

Noch schlimmer.

Ich lasse dort per mail Variablen ausgeben. Aber er scheint garnicht den Controller auszuführen.

Wenn ich /checkout/shippingPayment/ aufrufe,

ist dieser Controller doch eigentlich korrekt aufgebaut

Subscribed wird es via

namespace MDPlugin;

use Shopware\Components\Plugin;
use Shopware\Components\Plugin\Context\InstallContext;


class MDPlugin extends Plugin
{


    /**
     * @return \Shopware\Components\Model\ModelManager
     */
    protected function getEntityManager()
    {
        return Shopware()->Models();
    }

    /**
     * @param InstallContext $context
     */

    public function install(InstallContext $context)
    {
        $this->AddAttributes();
        parent::install($context);
    }

    /**
     * @return array
     */
    public function getCapabilities()
    {
         return array(
        'install' => true,
        'update' => true,
        'enable' => true);
    }


    public static function getSubscribedEvents()
    {
    return [
        'Enlight_Controller_Dispatcher_ControllerPath_Frontend_CheckoutRequests' => 'onGetFrontendController'
    ];

    }

    /**
     * @return string
     */
    public function onGetFrontendController()
    {
        return $this->Path() . 'Controllers/Frontend/CheckoutRequests.php';
    }

....................
.......

 

So wird der Controller eingebunden.Ganz simpler Aufbau.

Aber irgendwie habe ich ein Brett vor dem Kopf.

 

Du registrierst also einen neuen controller „CheckoutRequest“ und versuchst ihn aber mit domain.de/checkout/shippingPayment aufzurufen?

Viele Grüße

ja so ist es

 

Ich will im Checkout Daten abgreifen bzw. POST Daten durchreichen und speichern