我无法理解 - > isuploaded()的工作原理。我想上传六张图片以显示在我的索引页面上。现在的问题是,在我的更新功能中,如果我只上传一个或两个图像$ upload-> isUploaded()返回一个false值,但如果我决定更新所有六个,它会返回一个真值。我该如何处理这个问题?我错过了什么吗?
这是我的zend文件传输上传
$upload = new Zend_File_Transfer();
$upload->addValidator('Count', false, array('min' =>1, 'max' => 6))
->addValidator('Size', false, array('max' => '1Mb'))
->addValidator('ImageSize', false, array('minwidth' => 50,
'maxwidth' => 1000,
'minheight' => 50,
'maxheight' => 1000));
if ($upload->isUploaded()) $hasImage = true;
答案 0 :(得分:2)
默认情况下,Zend猜测所有上传的文件都是无效的,即使其中一个提交的表单文件字段为空。
Zend文档建议通过在 isValid()
之前调用receive()
方法来覆盖此行为。
所以我不确定是否建议最佳解决方案,但它对我有用:
$upload = new Zend_File_Transfer();
$upload->setDestination( 'some your destination' );
if( $adapter->isValid( 'your form file field name' ) ){
$adapter->receive( 'your form file field name' );
}
依此类推每个文件字段名称。如果需要,请将foreach
换行。
答案 1 :(得分:1)