# Wie mit  "tpl + Javascript (Ajax-Controller-Aufruf) + Controller" etwas in Datenbank schreiben?

**URL:** <https://forum.shopware.com/t/wie-mit-tpl-javascript-ajax-controller-aufruf-controller-etwas-in-datenbank-schreiben/51092>\
**Category:** Programmierung\
**Created:** [12. Februar 2018 um 21:39 UTC](https://forum.shopware.com/t/wie-mit-tpl-javascript-ajax-controller-aufruf-controller-etwas-in-datenbank-schreiben/51092 "2018-02-12T21:39:13Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Tobias\_L](https://avatars.discourse-cdn.com/v4/letter/t/8edcca/32.png) [@Tobias\_L](https://forum.shopware.com/u/Tobias_L)\
**Post date:** [12. Februar 2018 um 21:39 UTC](https://forum.shopware.com/t/wie-mit-tpl-javascript-ajax-controller-aufruf-controller-etwas-in-datenbank-schreiben/51092/1 "2018-02-12T21:39:13Z")

</div>

Hallo Zusammen,

Dank&nbsp;jakko [https://forum.shopware.com/discussion/comment/215627](https://forum.shopware.com/discussion/comment/215627)&nbsp;der meine Frag hier eig schon beantwortet hat aber nur in Shopware 4. Das ganze brauch ich halt nur für die Version 5.3 in Shopware.

Kann mir einer sagen was ich beim umschreiben für mein Projekt&nbsp;falsch gemacht habe? Leider wird mein Controller nicht geladen. Oder ist es was anderes? ![Foot-in-Mouth](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/1X/bedbc37f276faa6d086ddea9cd70cb0550bbd56e.png "Foot-in-Mouth")

 ![](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/2X/7/77832748863dd2e0beef56827b8a32ba72ce21a3.jpeg)

Das ist meine **TestPlugin.php:**

Dann hab ich folgende Ordner mit Inhalten:

**Controllers/Frontend/MeinControllerTest.php:**

```
Plugins()->Controller()->ViewRenderer()->setNoRender();

        $sql = "INSERT INTO tjl_status (s_status) VALUES ('123');";
        Shopware()->DB()->query($sql);
    }

}

```

**Resources/services.xml:**

**Resources/views/frontend/checkout/confirm.tpl:**

```
{extends file='parent:frontend/checkout/confirm.tpl'}

{block name="frontend_checkout_confirm_submit"}

    {$smarty.block.parent}
    
    
    
    

    

    

        $( document ).ready(function() {

            $(".myDiv").click(function(){
                var myurl = $(".myDiv").find('input[name=requestUrl]').val();

                $.ajax({

                    // the URL for the request
                    url: myurl,
                    // the type of data we expect back
                    dataType : "json",
                    // code to run regardless of success or failure
                    complete: function( xhr, status ) {
                        alert( "Js wurde ausgeführt!" );
                    }
                });

            });

        });

    

    
        
        Test DB eintrag!
    

{/block}

```

**Subscriber/LinkSubscriber.php:**

```
 'onPostDispatchCheckout',
            'Enlight_Controller_Dispatcher_ControllerPath_Frontend_MeinControllerTest' => 'onGetFrontendController'
        ];
    }

    public function onGetFrontendController(Enlight_Event_EventArgs $args){

        return $this->Path() . '/Controllers/Frontend/MeinControllerTest.php';

        

    }

    /**
     * @param Enlight_Event_EventArgs $args
     */

    public function onPostDispatchCheckout(Enlight_Event_EventArgs $args){

        /** @var Enlight_Controller_Action $controller */
        $controller = $args->get('subject');
        $view = $controller->View();
        $view->addTemplateDir(implode(DIRECTORY_SEPARATOR, [__DIR__ , '..', 'Resources', 'views']));

    }

}

```

Danke schon mal im Vorraus für die Hilfe ![Smile](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/1X/bac5f5766b6a20565a8fb995345b4e41d24daac0.png "Smile")

---

<div class="post-metadata">

**Author:** ![sschreier](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/sschreier/32/23296_2.png) [@sschreier](https://forum.shopware.com/u/sschreier)\
**Post date:** [12. Februar 2018 um 21:41 UTC](https://forum.shopware.com/t/wie-mit-tpl-javascript-ajax-controller-aufruf-controller-etwas-in-datenbank-schreiben/51092/2 "2018-02-12T21:41:02Z")

</div>

Hallo,

im Prinzip steht doch aber schon in der Fehlermeldung die “Lösung”? Siehe: [CSRF Protection](https://developers.shopware.com/developers-guide/csrf-protection/#protect-get-requests-via-csrf-tokens) .

Grüße

Sebastian

---

<div class="post-metadata">

**Author:** ![Tobias\_L](https://avatars.discourse-cdn.com/v4/letter/t/8edcca/32.png) [@Tobias\_L](https://forum.shopware.com/u/Tobias_L)\
**Post date:** [12. Februar 2018 um 21:48 UTC](https://forum.shopware.com/t/wie-mit-tpl-javascript-ajax-controller-aufruf-controller-etwas-in-datenbank-schreiben/51092/3 "2018-02-12T21:48:25Z")

</div>

> [@sschreier schrieb:](https://forum.shopware.com/profile/18157/sschreier "sschreier")
> 
> Hallo,
> 
> im Prinzip steht doch aber schon in der Fehlermeldung die „Lösung“? Siehe: [https://developers.shopware.com/developers-guide/csrf-protection/#protect-get-requests-via-csrf-tokens](https://developers.shopware.com/developers-guide/csrf-protection/#protect-get-requests-via-csrf-tokens) .
> 
> Grüße
> 
> Sebastian

Danke Sebatian.

Leider bin ich noch relativ neu in Shopware. Was muss ich denn machen um den Fehler zu vermeiden?

Gruß Tobias

---

<div class="post-metadata">

**Author:** ![simkli](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/simkli/32/13124_2.png) [@simkli](https://forum.shopware.com/u/simkli)\
**Post date:** [12. Februar 2018 um 21:55 UTC](https://forum.shopware.com/t/wie-mit-tpl-javascript-ajax-controller-aufruf-controller-etwas-in-datenbank-schreiben/51092/4 "2018-02-12T21:55:33Z")

</div>

Naja in deine Klasse erbt von Enlight\_Controller\_Action. Gleichzeitig schreibst du weiter oben aber Namespace TestPlugin\Controllers\Frontend. In diesem Namespace gibt es die Klasse Enlight\_Controller\_Action doch gar nicht.

Lösung1: Du schreibt einen Backslash vor Enlight\_ControllerAction&nbsp;

Lösung2: Du importierst die Klasse via use \Enlight\_Controller\_Action.&nbsp;

Lese dir am besten mal das Kaptiel zu Namespaces in der PHP-Dokumentation durch 😉

Viele Grüße

---

<div class="post-metadata">

**Author:** ![Tobias\_L](https://avatars.discourse-cdn.com/v4/letter/t/8edcca/32.png) [@Tobias\_L](https://forum.shopware.com/u/Tobias_L)\
**Post date:** [12. Februar 2018 um 22:12 UTC](https://forum.shopware.com/t/wie-mit-tpl-javascript-ajax-controller-aufruf-controller-etwas-in-datenbank-schreiben/51092/5 "2018-02-12T22:12:51Z")

</div>

Danke für die Antwort @simkli‍.

Leider haben die beiden Lösungen auch nicht funltioniert. ich hab immer noch die gliche Fehlermeldung.

Viele Grüße

Tobias
