将数据传递给uploadify

时间:2012-07-06 05:15:49

标签: php javascript jquery uploadify

好的,我有一个表格下拉列表

<select name="select_category" id="select_category">
<option value="cheese-cakes">Cheesecakes</option>
<option value="fruit-cakes">Fruitcakes</option>
</select>

和隐藏文字输入

<input type="hidden" id="category_container" />

在我的jquery / javascript中

$('#select_category').change(function(){
var cat = $('#select_category option:selected').attr('value');
$('#category_container').attr('value',cat);
});

uploadify

var plug = '<?php echo plugins_url('plugin_name') ?>'; 
$('#file_upload').uploadify({
'formData'  : {'cat_name' : $('#category_container').attr('value')},
swf'      : plug + '/uploadify/uploadify.swf',
'uploader' : plug + '/uploadify/uploadify.php'
});

我想将文本框#category_container的值作为发布数据传递并发送到uploadify.php,以便保存的文件名是传递的文本框/数据的值。

问题是,有一个文件已上传,但没有文件名。例如:它只上传'.png','.jpg'文件

uploadify.php

$name = $_GET['cat_name'];

$tempFile = $_FILES['Filedata']['tmp_name'];
$targetPath = $targetFolder;
$targetFile = rtrim($targetPath,'/') . '/' . $_FILES['Filedata']['name'];

$path = pathinfo($targetFile);

$newTargetFile = $targetFolder.$name.'.'.$path['extension'];

// 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($tempFile,$newTargetFile);
    echo $newTargetFile;
} else {
    echo 'Invalid file type.';
}

1 个答案:

答案 0 :(得分:2)

此代码丢失了。

'onUploadStart':function(file){
   $('#file_upload').uploadify('settings','formData',{'cat_name' : $('#category_image_name').val()});
}
问题已经结束。