PHP Uploadprogress扩展函数始终返回null,没有上载数据
我正在使用带有uploadprogress扩展的PHP5.3.2在使用zend framework进行上传时获得一个progressbar。甚至zend提供的演示也不起作用。zend示例中的代码-PHP Uploadprogress扩展函数始终返回null,没有上载数据,php,zend-framework,file-upload,Php,Zend Framework,File Upload,我正在使用带有uploadprogress扩展的PHP5.3.2在使用zend framework进行上传时获得一个progressbar。甚至zend提供的演示也不起作用。zend示例中的代码- if (isset($_GET['uploadId'])) { set_include_path(realpath(dirname(__FILE__) . '/../../../library') . PATH_SEPARATOR . get_include_path
if (isset($_GET['uploadId'])) {
set_include_path(realpath(dirname(__FILE__) . '/../../../library')
. PATH_SEPARATOR . get_include_path());
require_once 'Zend/ProgressBar.php';
require_once 'Zend/ProgressBar/Adapter/JsPull.php';
require_once 'Zend/Session/Namespace.php';
$data = uploadprogress_get_info($_GET['uploadId']);
$bytesTotal = ($data === null ? 0 : $data['bytes_total']);
$bytesUploaded = ($data === null ? 0 : $data['bytes_uploaded']);
$adapter = new Zend_ProgressBar_Adapter_JsPull();
$progressBar = new Zend_ProgressBar($adapter, 0, $bytesTotal, 'uploadProgress');
if ($bytesTotal === $bytesUploaded) {
$progressBar->finish();
} else {
$progressBar->update($bytesUploaded);
}
}
uploadprogress\u get\u info始终返回null。我认为我的代码有问题,所以我下载了可用的工作示例,但即使在uploadprogress\u get\u info中也始终返回null
我的上传进度配置值
已启用上载进度支持
版本1.0.1
uploadprogress.file.contents\u模板/tmp/upload\u contents\u%s
uploadprogress.file.filename_模板/tmp/upt_uu%s.txt
uploadprogress.get_内容1
在谷歌搜索时,我发现uploadprogress扩展在Suhosin补丁<0.9.26上有一些问题,但我使用的是Suhosin补丁0.9.9.1你在本地测试吗?我是说在本地主机上测试这个?尝试上载到远程主机,或测试一个相当大的文件(请确保在之前跳过
upload\u max\u filesize
和post\u max\u size
)
在谷歌搜索时,我发现uploadprogress扩展在Suhosin补丁<0.9.26时有一些问题,但我使用的是Suhosin补丁0.9.9.1
我和苏霍辛的版本一样,也有这个问题。还尝试了apc_fetch(),suhosin也破坏了它
多么愚蠢的补丁。要删除它,我必须重建php。看在上帝的份上 虽然我使用Zend_File_Transfer_Adapter来处理上传,但我也遇到了同样的问题。它很有用,因为您也可以验证上载的文件:) 至少在服务器配置方面,有两种有用的方法可以帮助您:
Zend_File_Transfer_Adapter_Http::isApcAvailable();
Zend_File_Transfer_Adapter_Http::isUploadProgressAvailable();
我使用firefox throttle插件在局域网上的另一台计算机上进行本地测试,以模拟低速。上传会发生并且需要时间来完成。