# Wert in Controller auslesen

**URL:** https://forum.shopware.com/t/wert-in-controller-auslesen/70610
**Category:** Programmierung
**Created:** [2. November 2020 um 21:32 UTC](https://forum.shopware.com/t/wert-in-controller-auslesen/70610 "2020-11-02T21:32:20Z")
**Posts on this page:** 8
**Page:** 1

<div class="post-metadata">

### Author: ![brettvormkopp](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/brettvormkopp/32/7788_2.png) [@brettvormkopp](https://forum.shopware.com/u/brettvormkopp)
#### Post date: [2. November 2020 um 21:32 UTC](https://forum.shopware.com/t/wert-in-controller-auslesen/70610/1 "2020-11-02T21:32:20Z")

</div>

Hallo,&nbsp;

ich habe ein Controller erstellt.

Diesen kann ich auffrufen über [example.de/frontend/Test](http://example.de/frontend/Test) und dort führt er die indexAction() auf. Soweit alles ok.

Was muss ich machen, damit man zum Beispiel [example.de/frontend/Test/123](http://example.de/frontend/Test/123) aufrufen kann, also 123 ist ein variabler Wert, es könnte auch 321 sein.

Ich hoffe ich habe mich korrekt ausgedrückt.&nbsp; Ich suche keine function&nbsp;123Action(), sondern will den Wert abfangen und verarbeiten.

Danke und Gruss.

---

<div class="post-metadata">

### Author: ![brettvormkopp](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/brettvormkopp/32/7788_2.png) [@brettvormkopp](https://forum.shopware.com/u/brettvormkopp)
#### Post date: [2. November 2020 um 22:16 UTC](https://forum.shopware.com/t/wert-in-controller-auslesen/70610/2 "2020-11-02T22:16:20Z")

</div>

Habe jetzt das hier rausgefunden: &nbsp;&nbsp;[example.de/frontend/Test/id/123/](http://example.de/frontend/Test/id/123/)

Test steht für testAction() und wenn ich in der URL erweitere mit id/123/ wird das als [id =\> “123”] verarbeitet.

```
    public function testAction()
    {
        $params = $this->Request()->getParams();
        print_r($params);
     }

```

&nbsp;

---

<div class="post-metadata">

### Author: ![R4M](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/r4m/32/9983_2.png) [@R4M](https://forum.shopware.com/u/R4M)
#### Post date: [3. November 2020 um 13:01 UTC](https://forum.shopware.com/t/wert-in-controller-auslesen/70610/3 "2020-11-03T13:01:47Z")

</div>

🙂

```
$id = $this->Request()->getParam('id');

```

&nbsp;

---

<div class="post-metadata">

### Author: ![brettvormkopp](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/brettvormkopp/32/7788_2.png) [@brettvormkopp](https://forum.shopware.com/u/brettvormkopp)
#### Post date: [3. November 2020 um 13:41 UTC](https://forum.shopware.com/t/wert-in-controller-auslesen/70610/4 "2020-11-03T13:41:34Z")

</div>

Vielen Dank für den super Tipp. @R4M‍

Noch eine Frage bzgl. Sicherheit. Ist das denn sicher vor SQL-Injections? Ich nutze PDO prepared Statements innerhalb der Action und frage mich ob das sicher ist …mhhh.

Danke und Gruss

---

<div class="post-metadata">

### Author: ![R4M](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/r4m/32/9983_2.png) [@R4M](https://forum.shopware.com/u/R4M)
#### Post date: [3. November 2020 um 13:45 UTC](https://forum.shopware.com/t/wert-in-controller-auslesen/70610/5 "2020-11-03T13:45:06Z")

</div>

Also ich gehe jetzt davon ganz fest aus, denn dies ist ja auch die übliche Methode in Plugins bzw. Shopware macht es selber so.

---

<div class="post-metadata">

### Author: ![Patrick\_Stahl](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/patrick_stahl/32/7679_2.png) [@Patrick\_Stahl](https://forum.shopware.com/u/Patrick_Stahl)
#### Post date: [3. November 2020 um 14:03 UTC](https://forum.shopware.com/t/wert-in-controller-auslesen/70610/6 "2020-11-03T14:03:04Z")

</div>

Moin @brettvormkopp‍,

wenn du konsequent und richtig prepared Statements nutzt, bist du da auf der sicheren Seite.

Liebe Grüße,  
 ![Shopware](https://forum.shopware.com/plugins/CKEditor/plugins/smiley/images/shopware.png "Shopware")&nbsp;Patrick Stahl

---

<div class="post-metadata">

### Author: ![brettvormkopp](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/brettvormkopp/32/7788_2.png) [@brettvormkopp](https://forum.shopware.com/u/brettvormkopp)
#### Post date: [3. November 2020 um 15:12 UTC](https://forum.shopware.com/t/wert-in-controller-auslesen/70610/7 "2020-11-03T15:12:24Z")

</div>

Was wären denn unrichtige prepared Statements [@Patrick Stahl]([http://forum.shopware.com/profile/1869/Patrick](http://forum.shopware.com/profile/1869/Patrick) Stahl „Patrick Stahl“)‍ &nbsp;?

Aktuell nutze ich die so:

```
$query = "SELECT * FROM xyz WHERE id = :id";
$conn = $pdo->prepare($query);
$conn->bindValue(......)

```

oder so:

```
$conn = $pdo->prepare("SELECT * FROM xyz WHERE id = :id");
$conn->bindValue(......)

```

&nbsp;

---

<div class="post-metadata">

### Author: ![Patrick\_Stahl](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/patrick_stahl/32/7679_2.png) [@Patrick\_Stahl](https://forum.shopware.com/u/Patrick_Stahl)
#### Post date: [9. November 2020 um 10:51 UTC](https://forum.shopware.com/t/wert-in-controller-auslesen/70610/8 "2020-11-09T10:51:57Z")

</div>

Moin @brettvormkopp‍,

sorry, war leider letzte Woche unpässlich.

Deine beiden Beispiele sind im Prinzip das Gleiche und beide okay so.  
„Unrichtige prepared statements“ sind quasi „garkeine prepared statements“ - häufig sehe ich einen Mix aus „korrektem prepared statement“ und dann wurde doch eine Injection eingebaut, bspw. wie folgt:

```
SELECT *
FROM XYZ
WHERE foo = :bar
LIMIT $test

```

Da ist das `foo = :bar` **korrekt** , aber direkt eine Zeile später wird dann doch eine Variable direkt ins Query gesetzt und damit eine Injection ermöglicht.

Lieben Gruß,  
 ![Shopware](https://forum.shopware.com/plugins/CKEditor/plugins/smiley/images/shopware.png "Shopware")&nbsp;Patrick Stahl
