Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [ZF]Zawsze zwraca typ application/octet-stream
Forum PHP.pl > Forum > PHP > Frameworki
Safek
Witam

Na dziś mam taki problem: otóż mam formularz w zendzie, nic specjalnego tylko jedno pole input type file i wszystko.

Problem w tym, że gdy zwracam sobie typ pliku, zawsze otrzymuje 'application/octet-stream'. Mial ktos cos podobnego kiedys?

forma wyglada tak:

  1. public function init()
  2. {
  3. $this->addElement('file', 'uploadFile', array(
  4. 'destination' => APPLICATION_PATH.'/../public/files/',
  5. 'label' => 'Wyślij plik:'
  6. ));
  7. $this->addElement('hidden', 'logo');
  8. $this->addElement('submit', 'submit', array(
  9. 'label' => 'Wyślij'
  10. ));
  11.  
  12. $this->setEnctype('multipart/form-data');
  13. $this->setAttrib('id', 'uploadForm');
  14. }


a w controllerze daje cos takiego:

  1. if ($request->isPost())
  2. {
  3. $post = $request->getPost();
  4. if ($uploadForm->isValid($request->getPost()))
  5. {
  6. var_dump($uploadForm->uploadFile->getMimeType());
  7. }
  8.  
  9. }


z gory dzieki za pomoc smile.gif
pozdrawiam
KrzysiekWildfire
Tak przesyła się pliki, nieważne co wysyłasz - jest to plik do zapisania.
Jeżeli masz problem z zapisem to w kontrolerze zrób tak:

  1. if ($this->_request->isPost()){
  2. if ($form->isValid($this->_request->getPost()){
  3. $values = $form->getValues();
  4. }
  5. }


jak wywołasz getValues to plik zostanie przeniesiony do folderu wskazanego w destination. I wtedy możesz sobie go obsłużyć, bo w $values będziesz miał całe jego info.
Safek
A to nie jest tak, ze metoda getMimeType powinna zworcic cos w rodzaju image/jpeg lub inne w zaleznosci od formatu?
KrzysiekWildfire
Hmmmm,
http://framework.zend.com/manual/en/zend.f...excludemimetype
Ale to chyba nie rozwiązuje Twojego problemu. Z dokumentacji wynika, że powinien wyciągnąć typ. A spróbuj zrobić print_r na danych które zwraca ta funkcja, powinieneś mieć wtedy ładnie pokazane wszystko.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.