# Array als Controller Redirect Parameter

**URL:** <https://forum.shopware.com/t/array-als-controller-redirect-parameter/47440>\
**Category:** Programmierung\
**Created:** [9. August 2017 um 14:08 UTC](https://forum.shopware.com/t/array-als-controller-redirect-parameter/47440 "2017-08-09T14:08:47Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Lukaschel](https://avatars.discourse-cdn.com/v4/letter/l/e56c9b/32.png) [@Lukaschel](https://forum.shopware.com/u/Lukaschel)\
**Post date:** [9. August 2017 um 14:08 UTC](https://forum.shopware.com/t/array-als-controller-redirect-parameter/47440/1 "2017-08-09T14:08:47Z")

</div>

Guten Tag,

vielen Dank fürs Lesen und Antworten.

Mein Problem sieht folgendermaßen aus ich möchte gerne an eine Controller Action  
per Redirect ein Array als Parameter mit übergeben.  
Einfache GET oder POST Parameter sind ja kein Problem

Aktuell löse ich es noch über eine Session, von dieser Lösung bin ich allerdings&nbsp;nicht so begeistert.

Hat hier vielleicht jemand ne Idee wie ich das Array weitergeben könnte?

Grüße Lukaschel

---

<div class="post-metadata">

**Author:** ![Jens\_K](https://avatars.discourse-cdn.com/v4/letter/j/c67d28/32.png) [@Jens\_K](https://forum.shopware.com/u/Jens_K)\
**Post date:** [9. August 2017 um 14:20 UTC](https://forum.shopware.com/t/array-als-controller-redirect-parameter/47440/2 "2017-08-09T14:20:54Z")

</div>

Hi,

per POST bietet sich json\_encode() oder&nbsp;serialize() an. Wenn es per GET übertragen werden muss, kann man das ganze ggf. mit base64\_encode lösen. Hier hast du allerdings einen Overhead von ca. 33% die mehr übertragen sind und deine maximale Länge (noch) weiter einschränken.

&nbsp;

Viele Grüße,

Jens

---

<div class="post-metadata">

**Author:** ![Lukaschel](https://avatars.discourse-cdn.com/v4/letter/l/e56c9b/32.png) [@Lukaschel](https://forum.shopware.com/u/Lukaschel)\
**Post date:** [10. August 2017 um 05:56 UTC](https://forum.shopware.com/t/array-als-controller-redirect-parameter/47440/3 "2017-08-10T05:56:50Z")

</div>

Hallo,

vielen Dank schonmal.

Hättest du dazu eventuell auch ein Code Beispiel habe es gerade so probiert, allerdings  
hängt er es so als GET Parameter mit an.

```
$this->redirect(Shopware()->Front()->Router()->assemble(array('controller' => 'LoginAction', 'action' => 'loginRequest', 'login_array' => serialize($login_array))));

```

Grüße  
Lukaschel

---

<div class="post-metadata">

**Author:** ![Michael\_Telgmann](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/michael_telgmann/32/20289_2.png) [@Michael\_Telgmann](https://forum.shopware.com/u/Michael_Telgmann)\
**Post date:** [10. August 2017 um 07:34 UTC](https://forum.shopware.com/t/array-als-controller-redirect-parameter/47440/4 "2017-08-10T07:34:01Z")

</div>

Hallo Lukaschel,

auf Grund der Funktionsweise von $this-\>redirect() werden die Parameter als GET Parameter mitgesendet. Btw kannst du auch direkt das Array in die Funktion reingeben ohne vorher den Router zu nutzen.

```
$this->redirect(['controller' => 'LoginAction', 'action' => 'loginRequest', 'login_array' => serialize($login_array)]);

```

Wenn du den Parameter als POST senden möchtest kannst du die forward Methode nutzen:

```
$this->forward('loginRequest', 'loginAction', null, [
    'login_array' => serialize($login_array)
]);

```

Viele Grüße aus Schöppingen

&nbsp;Michael Telgmann

---

<div class="post-metadata">

**Author:** ![Lukaschel](https://avatars.discourse-cdn.com/v4/letter/l/e56c9b/32.png) [@Lukaschel](https://forum.shopware.com/u/Lukaschel)\
**Post date:** [10. August 2017 um 07:46 UTC](https://forum.shopware.com/t/array-als-controller-redirect-parameter/47440/5 "2017-08-10T07:46:16Z")

</div>

Weeeyy bin begeistert!!

Vielen Dank
