Невозможно передать значения для загрузки с помощью onuploadstart и formdata

Когда я добавляю FormData часть 'formData' : {'gallery_choice' : 'EMPTY'} код все еще работает, но я хочу изменить ‘EMPTY’ в выбранную галерею с использованием PHP <?php $GLOBALS['gallery_choice'] ?> или что-то еще работает (но значение, которое мне нужно, сохраняется как это глобальное).

Когда я добавляю onUploadStart часть (добавлена ​​в разделе кода ниже), uploadify.swf файл перестает работать, и мне предоставляется опция возврата назад (скучная кнопка «Выбрать файл» в HTML) вместо необычной кнопки флэш-памяти — что я делаю не так?

<script type="text/javascript">
$(function() {
$('#file_upload').uploadify({
//'auto'     : false,
'formData' : {'gallery_choice' : 'EMPTY'},
'swf'      : 'uploadify.swf',
'uploader' : 'uploadify.php',
'queueSizeLimit' : 10,
'width'    : 150,
'height'   : 20,
'buttonText' : 'V&aelig;lg Filer',
'checkExisting' : '/check-exists.php',
'fileTypeDesc' : 'Image Files',
'fileTypeExts' : '*.gif; *.jpg; *.png',
'fileSizeLimit' : '400KB',
//'uploadLimit' : 20
// Put your options here
'overrideEvents' : ['onSelectError','onDialogClose','onUploadStart'],
'onUploadStart' : function(file){
$('#file_upload').uploadify('settings','gallery_choice','TEMP'});
},
'onSelectError' : function(file, errorCode, errorMsg) {
switch(errorCode) {
case 110:
alert('ALERT! File is to big! The File: "' + file.name + '" is larger than the maximum size of 400KB! The file was not uploaded!');
break;
case 130:
alert('ALERT! INCORRECT FILE TYPE! The file: "' + file.name + '" is not of the allowed type (.jpg, .png eller .gif)! The file was not uploaded!');
break;
case 120:
alert('ALERT! THE FILE IS EMPTY! The file: "' + file.name + '" is empty (0 bytes)! The file was not uploaded!');
break;
default:
alert('ALERT! The file: "' + file.name + '" made an error with the error code: ' + errorCode + ', as well as the following message: ' + errorMsg + '  The file was not uploaded!!');
}
}
});
});
</script>

В случае, если кто-то хочет, вот также uploadify.php файл:

<?php
// Define a destination from user choice
if(isset($_GET['gallery_choice'])){
$targetFolder = 'uploads/' . $_GET['gallery_choice'] . '/';
}else
$targetFolder = 'uploads/TEMP/';

//$targetFolder = '/uploads'; // Relative to the root
//$targetFolder = 'uploads/';
//$verifyToken = md5('unique_salt' . $_POST['timestamp']);

if (!empty($_FILES) /*&& $_POST['token'] == $verifyToken*/) {
//$tempFile = $_FILES['Filedata']['tmp_name'];
//$targetPath = $_SERVER['DOCUMENT_ROOT'] . $targetFolder;
//$targetFile = rtrim($targetPath,'/') . '/' . $_FILES['Filedata']['name'];

// Validate the file type
$fileTypes = array('jpg','jpeg','gif','png'); // File extensions
$fileParts = pathinfo($_FILES['Filedata']['name']);

if (in_array($fileParts['extension'],$fileTypes)) {
move_uploaded_file($_FILES["Filedata"]["tmp_name"], $targetFolder . $_FILES["Filedata"]["name"]);
echo '1';
} else {
echo '0';
}

/*
if (in_array($fileParts['extension'],$fileTypes)) {
move_uploaded_file($tempFile,$targetFile);
echo '1';
} else {
echo 'Invalid file type.';
}
*/
}
?>

Я гуглил и переполнен стеком, но не нашел решения.

0

Решение

Проблема, с которой я столкнулся, когда кнопка Flash не появлялась, была связана с этой строкой 'formData' : {'gallery_choice' : 'EMPTY'},

Когда я изменил это на 'formData' : {'gallery_choice' : '<?php echo $GLOBALS['gallery_choice']; ?>'},
он начал работать, и как только я решил использовать $ _POST вместо $ _GET в моем Uploadify.php, это начало работать — это обновление Uploadify.php:

if(isset($_POST['gallery_choice'])){
$targetFolder = 'uploads/' . $_POST['gallery_choice'] . '/';
}else
$targetFolder = 'uploads/TEMP/';
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]