my controller receives post data. It's not from a Symfony generated form, but from an AngularJS custom form using FormData
.
The normal parameters are received normally in the request parameter bag, but how do I get the file that is uploaded? Do I need to manually do the same that the form's handleRequest
does?
My document is the same as the cookbook article.
So I need to get an UploadFile from the post request to call this method on the document entity:
public function setFile(UploadedFile $file = null)
How do I receive a upload manually in Symfony 2 (without using the form builder in any way)?
It is like a "multipart/form-data" upload without a form. You can also upload the file directly as content inside the body of the POST request using xmlHttpRequest like this: var xmlHttpRequest = new XMLHttpRequest(); var file = ...file handle... var fileName = ...file name...
With File Upload Forms for Google Sheets, you can easily build web forms and receive files of any size from anyone directly in your Google Drive. The forms are hosted on Google servers and all you need is a Google account to build your own forms.
The Request has a FileBag, similar to the ParameterBag
So I could get the file specified easily with:
$data = $this->getRequest()->request->all(); $file = $this->getRequest()->files->get('file');
and use the document as is from the cookbook:
$document = new Document(); $document->setFile($file); $lead->setDocument($document);
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With