Cała aplikacja tworzona w zendzie, jednak wgrywanie plików z pewnych przyczyn robię standardowym PHP.

Formularz:


  1. <form method="POST" action="<?=$this->url(array('controller' => 'modelling', 'action' => 'addmovie')) ?>" enctype="multipart/form-data" >
  2.  
  3. Wgraj zdjęcie <input name="filephoto" type="file">
  4. <input class="submit" type="submit" value="zapisz" />
  5.  
  6. </form>


I wykonywana akcja



  1. if(isset($_FILES['filephoto'])){
  2. if (move_uploaded_file($_FILES['filephoto']['tmp_name'],
  3. $_SERVER['DOCUMENT_ROOT'].'/files/'.$this->_getParam('id', 0).'/files/'.$_FILES['filephoto']['name'])) {
  4.  
  5. $this->modelFilm->addphoto($this->_getParam('id', 0),$_FILES['filephoto']['name']);
  6. echo "Plik został załadowany poprawnie...";
  7. }
  8. else {
  9. echo "Plik nie został załadowany...";
  10. }
  11. }


Warto zaznaczyć, że na localhoscie wszystko hula jak należy, problem jest na sewerze linuxpl.com. Serwer jest chyba poprawnie skonfigurowany tzn:


  1. file_uploads = on
  2. upload_max_filesize = 128M
  3. post_max_size = 32M



Plik za pomocą formularza jest na 100 % przesyłany (widać go w Firebugu), natomiast na pewno nie jest odbierany.

Gdy daję print_r($_FILES) wyskakuje pusta tablica tzn. Array()
Gdy odwołuję się do $_FILES['filephoto']['tmp_name'] to wyskakuje
Kod:

Notice: Undefined index: filemovie

Macie jakieś pomysły, nie uśmiecha mi się zmiana serwera ?


Spróbowałem również ze standardowym schematem Zend:

$adapter = new Zend_File_Transfer_Adapter_Http();
  1. if ($adapter->isUploaded('filephoto')) {
  2. echo "jestem";
  3. }

i nie działa...tzn. na localhoscie wypisuje napis "jestem", na serwerze jest problem.