Im Controller EventListener auf $_FILES zugreifen

Hallo, Ich habe auf folgende Controller-action Ein Event registriert: public function ajaxAddArticleCartAction() { $orderNumber = $this-\>Request()-\>getParam('sAdd'); $quantity = $this-\>Request()-\>getParam('sQuantity'); $this-\>View()-\>assign( 'basketInfoMessage', $this-\>getInstockInfo($orderNumber, $quantity) ); if ($this-\>Request()-\>get('sAddAccessories')) { $this-\>addAccessories( $this-\>Request()-\>getParam('sAddAccessories'), $this-\>Request()-\>getParam('sAddAccessoriesQuantity') ); } $this-\>basket-\>sAddArticle($orderNumber, $quantity); $this-\>forward('ajaxCart'); } Wie kann man hier auf $_FILES zugreifen. Ich habe es im event Listener so versucht: $file = $\_FILES['picture1']; Doch Die Variable ist leer. Der Event Listener ist richtig regestriert. Auf $_POST kann auch nicht direkt zugegriffen werden. An die Post werte bin ich mit folgendem code gekommen: $checkoutController = $arguments-\>getSubject(); $wunschtext = $checkoutController-\>Request()-\>getParam('wunschtext'); Gibt es etwa eine Art „getFiles“ Funktion ? Das Formular ist dieses hier: [code]



[/code] Das merkwürdige ist, dass ich in der changeQuantity function an die POST werte ganz normal mit $\_POST herankomme. Ich benutze den Offcanvas Warenkorb. Mit dem normalen funktioniert es aber auch nicht.

Es wäre wirklich sehr nett wenn mir jemand sagen könnte wie ich auf $\_FILES zugreifen kann. Das muss doch irgendwie gehen. Ich bedanke mich schon einmal im voraus.

Hast du hier eine Lösung gefunden? Stehe vor dem gleichen Problem.

Habt ihr es mal mit var_dump($_FILES) versucht? Zeigt er euch da was an?

Habt ihr hier eine Antwort gefunden, ich habe bei der AJAX Add to Basket das ähnliche Problem,
ich kann auf die POST Variablen zugreifen aber ein $_FILES finde ich nicht mit var_dump.

Hallo,

Um an den post zu kommen benutze ich folgendes (in meinem Anwendungsfall) für den register controller :

 /** @var Shopware_Controllers_Frontend_Register $subject */
        $subject = $args->getSubject();
        $postData = $subject->Request()->getPost();

danach immer 

if (isset($postData))

nutzen. Und darin zumindest auf  

if (isset($_FILES))

BIst du dir sicher dass du in deinem Controller beim Event landest ? Mal mit debugger reingegangen?

Dateien werden wohl nicht mit form.serialize() mitserialisiert. siehe hier; javascript - How can I upload files asynchronously? - Stack Overflow