Знаете ли вы, что вы можете получить filename
, filpath
внутри события onComplete
, например: -
onComplete: function(event, queueID, fileObj, reponse, data)
{
alert fileObj.name; //The name of the uploaded file
alert fileObj.filePath; //The path on the server to the uploaded file
location.href= "complete.php?filename="+fileObj.name+"&filepath="+fileObj.filePath; //Here you can do a javascript redirect
}
Дополнительную информацию смотрите в документации http://www.uploadify.com/documentation/events/oncomplete-2/
Вы ищете эти значения? Если нет, дайте мне знать
Обновления
В соответствии с вашими обновлениями у вас есть 2 варианта.
Либо выполнить «некоторый процесс» после загрузки файла в uploadify.php. Вы можете увидеть файл uploadify.php
, который поставляется с плагином uploadify. Там у вас есть массив $_FILES['Filedata']
, содержащий всю информацию о файле. Вы можете сами выполнить постобработку здесь (лучше вызывая функцию, а не писать много кода в основном коде uploadify)
в uploadify.php
$ _FILES ['Filedata'] ['name'] // имя файла
Или, как я уже сказал, получить имя файла и путь внутри события onComplete
. Затем передайте эти параметры следующим образом: -
location.href= "complete.php?filename="+fileObj.name+"&filepath="+fileObj.filePath;
Я думаю, что это лучше. Вместо этого вы можете отправить ajax-запрос, чтобы выполнить весь процесс (загрузка файла + ваш «некоторый процесс») без повторной загрузки страницы.
Напишите запрос $. Post () внутри события onComplete
с этими параметрами и отправьте в "complete.php"
Получение параметров внутри onComplete
, которые по умолчанию недоступны
Вы должны использовать параметр response
, доступный внутри onComplete
Я работал над загрузкой версии 2.1.0, поэтому мое решение наверняка будет работать на этой версии.
Если вам нужен только один параметр, вы можете повторить его в конце uploadify.php
Я сделал следующее: -
По моему uploadify.php
изменилось (это было в оригинальной uploadify.php): -
move_uploaded_file($tempFile,$targetFile);
echo "1";
к этому: -
move_uploaded_file($tempFile,$targetFile);
echo $tempFile;
и затем внутри события onComplete
взорвался -
var tmpName = reponse;
Если, однако, вы хотите получить более одного параметра внутри onComplete
, это прием, который я могу дать (это не очень хороший подход, но я не смог вернуть несколько параметров другим способом - я пытался возвращение массива json и т. д.): -
move_uploaded_file($tempFile,$targetFile);
echo $param1.'%%__%%'.$param2;
и затем внутри события onComplete
произошел взрыв -
var paramsArray = explode('%%__%%',reponse);
param1 = paramsArray[0];
param2 = paramsArray[1];