Я пытаюсь использовать Uploadify v2.1.4 с Codeigniter v2.1. Я понимаю, что есть проблемы с флэш-памятью, которая не отправляет данные сеанса на контроллер, который использует codeigniter, возвращающий ошибку http 302. вместо сценария загрузки.
Я видел различные решения, но они все для старых версий фреймворка, особенно для codeigniter. Кто-нибудь нашел недавнее решение для интеграции uploadify с CI? Я могу заставить скрипт работать, поместив скрипт загрузки вне директории CI, но я хочу использовать функции CI, чтобы это не было хорошим решением для меня.
Для подтверждения полученного сообщения об ошибке «HTTP 302» ... т. Е. Сценарию загрузки запрещен доступ к / a / reports / uploadify
Это jquery
$(document).ready(function() {
$('#file_upload').uploadify({
'uploader' : '/swf/uploadify.swf',
'script' : '/a/reports/uploadify',
'cancelImg' : '/img/cancel.png',
'folder' : '/uploads/originals',
'auto' : true,
'fileExt' : '*.jpg;*.pdf;*.doc',
'fileDesc' : 'jpg, pdf or doc',
'hideButton': false,
'removeCompleted':false
});
Любой мой контроллер
class Reports extends MY_Controller
{
public function uploadify()
{
log_message('info','uploadify method being called');
if (!empty($_FILES)) {
$tempFile = $_FILES['Filedata']['tmp_name'];
$targetPath = $_SERVER['DOCUMENT_ROOT'] . $_REQUEST['folder'] . '/';
$targetFile = str_replace('//','/',$targetPath) . $_FILES['Filedata']['name'];
log_message('info', 'File Upload: Temp file created '.$tempFile);
log_message('info', 'File Upload: Target path for upload '.$targetPath);
log_message('info', 'File Upload: Target file for upload '.$targetFile);
$fileTypes = str_replace('*.','',$_REQUEST['fileext']);
$fileTypes = str_replace(';','|',$fileTypes);
$typesArray = split('\|',$fileTypes);
$fileParts = pathinfo($_FILES['Filedata']['name']);
if (in_array($fileParts['extension'],$typesArray))
{
move_uploaded_file($tempFile,$targetFile);
echo str_replace($_SERVER['DOCUMENT_ROOT'],'',$targetFile);
}
else
{
log_message('error', 'File Upload: Invalid file type uploaded ['.$fileParts['extension'].']');
echo 'Invalid file type.';
}
}
}
}