thorugh checkout_onepage_controller_success_action event save entry in custom table on order success in...





.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{ margin-bottom:0;
}







0















i have created event and observer checkout_onepage_controller_success_action
now I want to save data in the custom table of order success when order is placed
event.xml



<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Event/etc/events.xsd">
<event name="checkout_onepage_controller_success_action">
<observer name="checkout_controller_success_action"
instance="MagnetoHometryonObserverAfterPlaceOrder" />
</event>
</config>


AfterPlaceOrder.php



<?php
namespace MagnetoHometryonObserver;

use MagentoFrameworkEventObserverInterface;
use MagentoFrameworkAppRequestDataPersistorInterface;
use MagentoFrameworkAppObjectManager;

class AfterPlaceOrder implements ObserverInterface
{
protected $_order;
public function __construct(
MagentoSalesApiDataOrderInterface $order
) {
$this->_order = $order;
}

/**
*
* @param MagentoFrameworkEventObserver $observer
* @return void
*/
public function execute(MagentoFrameworkEventObserver $observer)
{
$orderids = $observer->getEvent()->getOrderIds();

foreach($orderids as $orderid){
$order = $this->_order->load($orderid);
}
}

}


now on order success, I have to save entry in custom table










share|improve this question





























    0















    i have created event and observer checkout_onepage_controller_success_action
    now I want to save data in the custom table of order success when order is placed
    event.xml



    <?xml version="1.0"?>
    <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Event/etc/events.xsd">
    <event name="checkout_onepage_controller_success_action">
    <observer name="checkout_controller_success_action"
    instance="MagnetoHometryonObserverAfterPlaceOrder" />
    </event>
    </config>


    AfterPlaceOrder.php



    <?php
    namespace MagnetoHometryonObserver;

    use MagentoFrameworkEventObserverInterface;
    use MagentoFrameworkAppRequestDataPersistorInterface;
    use MagentoFrameworkAppObjectManager;

    class AfterPlaceOrder implements ObserverInterface
    {
    protected $_order;
    public function __construct(
    MagentoSalesApiDataOrderInterface $order
    ) {
    $this->_order = $order;
    }

    /**
    *
    * @param MagentoFrameworkEventObserver $observer
    * @return void
    */
    public function execute(MagentoFrameworkEventObserver $observer)
    {
    $orderids = $observer->getEvent()->getOrderIds();

    foreach($orderids as $orderid){
    $order = $this->_order->load($orderid);
    }
    }

    }


    now on order success, I have to save entry in custom table










    share|improve this question

























      0












      0








      0








      i have created event and observer checkout_onepage_controller_success_action
      now I want to save data in the custom table of order success when order is placed
      event.xml



      <?xml version="1.0"?>
      <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Event/etc/events.xsd">
      <event name="checkout_onepage_controller_success_action">
      <observer name="checkout_controller_success_action"
      instance="MagnetoHometryonObserverAfterPlaceOrder" />
      </event>
      </config>


      AfterPlaceOrder.php



      <?php
      namespace MagnetoHometryonObserver;

      use MagentoFrameworkEventObserverInterface;
      use MagentoFrameworkAppRequestDataPersistorInterface;
      use MagentoFrameworkAppObjectManager;

      class AfterPlaceOrder implements ObserverInterface
      {
      protected $_order;
      public function __construct(
      MagentoSalesApiDataOrderInterface $order
      ) {
      $this->_order = $order;
      }

      /**
      *
      * @param MagentoFrameworkEventObserver $observer
      * @return void
      */
      public function execute(MagentoFrameworkEventObserver $observer)
      {
      $orderids = $observer->getEvent()->getOrderIds();

      foreach($orderids as $orderid){
      $order = $this->_order->load($orderid);
      }
      }

      }


      now on order success, I have to save entry in custom table










      share|improve this question














      i have created event and observer checkout_onepage_controller_success_action
      now I want to save data in the custom table of order success when order is placed
      event.xml



      <?xml version="1.0"?>
      <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Event/etc/events.xsd">
      <event name="checkout_onepage_controller_success_action">
      <observer name="checkout_controller_success_action"
      instance="MagnetoHometryonObserverAfterPlaceOrder" />
      </event>
      </config>


      AfterPlaceOrder.php



      <?php
      namespace MagnetoHometryonObserver;

      use MagentoFrameworkEventObserverInterface;
      use MagentoFrameworkAppRequestDataPersistorInterface;
      use MagentoFrameworkAppObjectManager;

      class AfterPlaceOrder implements ObserverInterface
      {
      protected $_order;
      public function __construct(
      MagentoSalesApiDataOrderInterface $order
      ) {
      $this->_order = $order;
      }

      /**
      *
      * @param MagentoFrameworkEventObserver $observer
      * @return void
      */
      public function execute(MagentoFrameworkEventObserver $observer)
      {
      $orderids = $observer->getEvent()->getOrderIds();

      foreach($orderids as $orderid){
      $order = $this->_order->load($orderid);
      }
      }

      }


      now on order success, I have to save entry in custom table







      event-observer magento2.3






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked 28 mins ago









      Ashish RamchandaniAshish Ramchandani

      38111




      38111






















          1 Answer
          1






          active

          oldest

          votes


















          0














          Try this,



          Your observer file should be like this,



          Inject your model in your constructor then create factory object of that and insert data into it like below



          <?php
          namespace MagnetoHometryonObserver;
          use MagentoFrameworkEventObserverInterface;
          use MagentoFrameworkAppRequestDataPersistorInterface;
          use MagentoFrameworkAppObjectManager;
          class AfterPlaceOrder implements ObserverInterface
          {
          protected $_order;
          protected $_dataFactory;
          public function __construct(
          MagentoSalesApiDataOrderInterface $order,
          {Vendor}{ModuleName}ModelDataFactory $dataFactory // this should be your model file
          ) {
          $this->_dataFactory = $dataFactory;
          $this->_order = $order;
          }

          /**
          *
          * @param MagentoFrameworkEventObserver $observer
          * @return void
          */
          public function execute(MagentoFrameworkEventObserver $observer)
          {
          $saveData = $this->_dataFactory->create();
          $model->addData([
          "column_name" => 'Title 01',
          "column_name" => 'Content 01',
          "column_name" => true
          ]);
          $saveData = $model->save();
          if($saveData){
          $this->messageManager->addSuccess( __('Insert Record Successfully !') );
          }
          $orderids = $observer->getEvent()->getOrderIds();
          foreach($orderids as $orderid){
          $order = $this->_order->load($orderid);
          }
          }
          }


          Hope this helps.





          share
























            Your Answer








            StackExchange.ready(function() {
            var channelOptions = {
            tags: "".split(" "),
            id: "479"
            };
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function() {
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled) {
            StackExchange.using("snippets", function() {
            createEditor();
            });
            }
            else {
            createEditor();
            }
            });

            function createEditor() {
            StackExchange.prepareEditor({
            heartbeatType: 'answer',
            autoActivateHeartbeat: false,
            convertImagesToLinks: false,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: null,
            bindNavPrevention: true,
            postfix: "",
            imageUploader: {
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            },
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            });


            }
            });














            draft saved

            draft discarded


















            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmagento.stackexchange.com%2fquestions%2f270403%2fthorugh-checkout-onepage-controller-success-action-event-save-entry-in-custom-ta%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown

























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            0














            Try this,



            Your observer file should be like this,



            Inject your model in your constructor then create factory object of that and insert data into it like below



            <?php
            namespace MagnetoHometryonObserver;
            use MagentoFrameworkEventObserverInterface;
            use MagentoFrameworkAppRequestDataPersistorInterface;
            use MagentoFrameworkAppObjectManager;
            class AfterPlaceOrder implements ObserverInterface
            {
            protected $_order;
            protected $_dataFactory;
            public function __construct(
            MagentoSalesApiDataOrderInterface $order,
            {Vendor}{ModuleName}ModelDataFactory $dataFactory // this should be your model file
            ) {
            $this->_dataFactory = $dataFactory;
            $this->_order = $order;
            }

            /**
            *
            * @param MagentoFrameworkEventObserver $observer
            * @return void
            */
            public function execute(MagentoFrameworkEventObserver $observer)
            {
            $saveData = $this->_dataFactory->create();
            $model->addData([
            "column_name" => 'Title 01',
            "column_name" => 'Content 01',
            "column_name" => true
            ]);
            $saveData = $model->save();
            if($saveData){
            $this->messageManager->addSuccess( __('Insert Record Successfully !') );
            }
            $orderids = $observer->getEvent()->getOrderIds();
            foreach($orderids as $orderid){
            $order = $this->_order->load($orderid);
            }
            }
            }


            Hope this helps.





            share




























              0














              Try this,



              Your observer file should be like this,



              Inject your model in your constructor then create factory object of that and insert data into it like below



              <?php
              namespace MagnetoHometryonObserver;
              use MagentoFrameworkEventObserverInterface;
              use MagentoFrameworkAppRequestDataPersistorInterface;
              use MagentoFrameworkAppObjectManager;
              class AfterPlaceOrder implements ObserverInterface
              {
              protected $_order;
              protected $_dataFactory;
              public function __construct(
              MagentoSalesApiDataOrderInterface $order,
              {Vendor}{ModuleName}ModelDataFactory $dataFactory // this should be your model file
              ) {
              $this->_dataFactory = $dataFactory;
              $this->_order = $order;
              }

              /**
              *
              * @param MagentoFrameworkEventObserver $observer
              * @return void
              */
              public function execute(MagentoFrameworkEventObserver $observer)
              {
              $saveData = $this->_dataFactory->create();
              $model->addData([
              "column_name" => 'Title 01',
              "column_name" => 'Content 01',
              "column_name" => true
              ]);
              $saveData = $model->save();
              if($saveData){
              $this->messageManager->addSuccess( __('Insert Record Successfully !') );
              }
              $orderids = $observer->getEvent()->getOrderIds();
              foreach($orderids as $orderid){
              $order = $this->_order->load($orderid);
              }
              }
              }


              Hope this helps.





              share


























                0












                0








                0







                Try this,



                Your observer file should be like this,



                Inject your model in your constructor then create factory object of that and insert data into it like below



                <?php
                namespace MagnetoHometryonObserver;
                use MagentoFrameworkEventObserverInterface;
                use MagentoFrameworkAppRequestDataPersistorInterface;
                use MagentoFrameworkAppObjectManager;
                class AfterPlaceOrder implements ObserverInterface
                {
                protected $_order;
                protected $_dataFactory;
                public function __construct(
                MagentoSalesApiDataOrderInterface $order,
                {Vendor}{ModuleName}ModelDataFactory $dataFactory // this should be your model file
                ) {
                $this->_dataFactory = $dataFactory;
                $this->_order = $order;
                }

                /**
                *
                * @param MagentoFrameworkEventObserver $observer
                * @return void
                */
                public function execute(MagentoFrameworkEventObserver $observer)
                {
                $saveData = $this->_dataFactory->create();
                $model->addData([
                "column_name" => 'Title 01',
                "column_name" => 'Content 01',
                "column_name" => true
                ]);
                $saveData = $model->save();
                if($saveData){
                $this->messageManager->addSuccess( __('Insert Record Successfully !') );
                }
                $orderids = $observer->getEvent()->getOrderIds();
                foreach($orderids as $orderid){
                $order = $this->_order->load($orderid);
                }
                }
                }


                Hope this helps.





                share













                Try this,



                Your observer file should be like this,



                Inject your model in your constructor then create factory object of that and insert data into it like below



                <?php
                namespace MagnetoHometryonObserver;
                use MagentoFrameworkEventObserverInterface;
                use MagentoFrameworkAppRequestDataPersistorInterface;
                use MagentoFrameworkAppObjectManager;
                class AfterPlaceOrder implements ObserverInterface
                {
                protected $_order;
                protected $_dataFactory;
                public function __construct(
                MagentoSalesApiDataOrderInterface $order,
                {Vendor}{ModuleName}ModelDataFactory $dataFactory // this should be your model file
                ) {
                $this->_dataFactory = $dataFactory;
                $this->_order = $order;
                }

                /**
                *
                * @param MagentoFrameworkEventObserver $observer
                * @return void
                */
                public function execute(MagentoFrameworkEventObserver $observer)
                {
                $saveData = $this->_dataFactory->create();
                $model->addData([
                "column_name" => 'Title 01',
                "column_name" => 'Content 01',
                "column_name" => true
                ]);
                $saveData = $model->save();
                if($saveData){
                $this->messageManager->addSuccess( __('Insert Record Successfully !') );
                }
                $orderids = $observer->getEvent()->getOrderIds();
                foreach($orderids as $orderid){
                $order = $this->_order->load($orderid);
                }
                }
                }


                Hope this helps.






                share











                share


                share










                answered 3 mins ago









                Prathap GunasekaranPrathap Gunasekaran

                1,8721618




                1,8721618






























                    draft saved

                    draft discarded




















































                    Thanks for contributing an answer to Magento Stack Exchange!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid



                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.


                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function () {
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmagento.stackexchange.com%2fquestions%2f270403%2fthorugh-checkout-onepage-controller-success-action-event-save-entry-in-custom-ta%23new-answer', 'question_page');
                    }
                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    What other Star Trek series did the main TNG cast show up in?

                    Berlina muro

                    Berlina aerponto