我一直在努力让 Uploadify flash上传程序(www.uploadify.com)与Zend Framework一起使用,到目前为止没有成功。
我已将所有Uploadify文件放在 / public / flash-uploader 目录下。
在控制器中,我包含所有必需的文件和库,如下所示:
$this->view->headScript()->appendFile('/js/jquery-1.3.2.min.js');
$this->view->headLink()->appendStylesheet('/flash-uploader/css/default.css');
$this->view->headLink()->appendStylesheet('/flash-uploader/css/uploadify.css');
$this->view->headScript()->appendFile('/flash-uploader/scripts/swfobject.js');
$this->view->headScript()->appendFile('/flash-uploader/scripts/jquery.uploadify.v2.1.0.min.js');
然后我像这样激活插件(#photo是输入文件字段的id):
$(document).ready(function() {
$("#photo").uploadify({
'uploader' : '/flash-uploader/scripts/uploadify.swf',
'script' : 'my-account/flash-upload',
'cancelImg' : '/flash-uploader/cancel.png',
'folder' : 'uploads/tmp',
'queueID' : 'fileQueue',
'auto' : true,
'multi' : true,
'sizeLimit' : 2097152
});
});
正如您所看到的,我将my-account / flash-upload脚本定位为后端处理(my-account是一个控制器,flash-upload是一个动作)。
我的表单标记如下所示:
<form enctype="multipart/form-data" method="post" action="/my-account/upload-public-photo"><ol>
<li><label for="photo" class="optional">File Queue<div id="fileQueue"></div></label>
<input type="hidden" name="MAX_FILE_SIZE" value="31457280" id="MAX_FILE_SIZE" />
<input type="file" name="photo" id="photo" class="input-file" /></li>
<li><div class="button">
<input type="submit" name="upload_public_photo" id="upload_public_photo" value="Save" class="input-submit" /></div></li></ol></form>
然而它不起作用。浏览按钮甚至没有显示在演示页面中,我只获得一个常规输入文件字段。
问题出在哪里?我已经盯着代码几个小时了,我在任何地方都看不到任何错误,经过30次连续30次代码后,我开始感到筋疲力尽。
答案 0 :(得分:1)
通过查看演示代码和文档:看起来该插件本身就提供了“FORM”元素。
您应该尝试将输入字段放在表单之外
之前从未使用过这个工具,仅仅是我的2美分:)