问题描述
||
因此,我一直在与“ Apress,Beginning Zend Framework”中包含的项目一起进行
似乎我遇到了一些障碍。
我当前在带有IIS的Windows(7旗舰版)中使用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对包括这条线:
$form->avatar->receive();
据我了解,这符合在站点上启用文件上载控件的要求。
问题是,每当我选择要上传的图像时,它都会显示“文件:\'\'不可读或不存在。”
这使我认为这是一个权限问题,因此我为其设置了完全权限。没用
在数十个目录中尝试过图像。不起作用。
我什至创建了一个简单的脚本来测试任何选中图像的存在性,可读性和可写性。它返回true并说它们是有效文件。
我在这里工作的头几个小时一直在寻找导致此问题的原因,但我不确定。
我觉得这是当我弄清楚时会让我/ facepalm遇到的那些问题之一。
任何帮助表示赞赏。
谢谢,
肯
解决方法
只是一个想法:检查上载temp目录。设置好了吗?它可以写成PHP吗?
如果没有,则无法上传任何文件,并且Zend_Form_Element_File将永远找不到文件。
, 尝试设置
$form->setEnctype(Zend_Form::ENCTYPE_MULTIPART);