2011-06-15 18 views
1

所以我一直在「Apress,開始Zend框架」 中包含的項目,似乎我遇到了一些障礙。Zend_Form_Element_File一致地說:「文件不可讀或不存在。」

我目前在Windows(7最終)w/IIS中使用Zf 1.11。

用於控制器的代碼駐留在getUpdateForm()(僅包括涉及到這個部分):

$form->setAttrib('encytype', 'multipart/form-data'); 

//Add file upload ability 
$fileUploadElement = new Zend_Form_Element_File('avatar'); 
$fileUploadElement->setLabel('Your Avatar') 
->setDestination('../public/users'); 
$fileUploadElement->addValidator('Count', true, 1); 
$fileUploadElement->addValidator('Extension', 'jpg,png,gif'); 
$form->addElement($fileUploadElement, 'avatar'); 

的aciton對然後inlcudes行:

$form->avatar->receive(); 

據我理解,這符合在網站上啓用文件上傳控制的要求。 問題是,只要我選擇一個圖片上傳它說「文件:」不可讀或不存在。「

這導致我認爲這是一個權限問題,所以我爲它設置了完全權限。沒有工作。 已經嘗試了幾十個目錄中的圖像。不起作用。

我甚至創建了一個簡單的腳本,用於測試任何選定圖像的存在性,可讀性和可寫性。它返回true並表示它們是有效的文件。

我已經在這裏工作了幾個小時,在這裏工作了,究竟是什麼會導致這種情況,我不確定。

我有一種感覺,這是當我弄明白的時候會讓我/ facepalm出現的那些問題之一。

任何幫助表示讚賞。 謝謝, 肯

+0

只是一個想法:檢查上傳的臨時目錄。它是否設置?它可寫入PHP嗎? – hakre 2011-06-15 18:27:19

+0

是的,/ facepalm。 非常感謝! – Ken 2011-06-15 18:39:46

+0

沒問題,我會以廣告的形式作爲回答,你可以在這裏留下問題,這樣有助於他人。 – hakre 2011-06-15 18:42:24

回答

1

只是一個想法:檢查上傳臨時目錄。它是否設置?它可寫入PHP嗎?

如果沒有,那麼沒有文件上傳可以工作,Zend_Form_Element_File永遠不會找到一個文件。

1

嘗試設置

$form->setEnctype(Zend_Form::ENCTYPE_MULTIPART); 
相關問題