使用uploadify上传后获取文件路径而不使用onComplete事件?

时间:2013-01-05 17:19:17

标签: php uploadify

我一直在这里和谷歌一起找到一个有效的解决方案,在没有onComplete事件的情况下使用uploadify上传后获取文件路径?

我正在使用不包含onComplete事件的最新版本的Uploadify版本3.2。 检查事件列表: http://www.uploadify.com/documentation/

所以我不能使用那个事件。

我对index.php使用以下代码,因为它附带了下载文件:

<body>
<h1>Uploadify Demo</h1>
<form>
    <div id="queue"></div>
    <input id="file_upload" name="file_upload" type="file" multiple="true">
</form>

<script type="text/javascript">
    <?php $timestamp = time();?>
    $(function() {
        $('#file_upload').uploadify({
            'formData'     : {
                'timestamp' : '<?php echo $timestamp;?>',
                'token'     : '<?php echo md5('unique_salt' . $timestamp);?>'
            },
            'swf'      : 'uploadify.swf',
            'uploader' : 'uploadify.php'
        });
    });
</script>

我修改了uploadify.php以设置上传文件的新名称,以避免在上传文件时出现任何问题:

$new_name=microtime();
$new_name=str_replace(".","",$new_name);
$new_name=str_replace(" ","",$new_name);
$store_dir="uploaded/"; //directory to place uploaded files
$fileName = $_FILES['Filedata']['name'];    
$fileTmp = $_FILES['Filedata']['tmp_name']; 
$fileType = $_FILES["Filedata"]["type"];
$fileSize = ($_FILES["Filedata"]["size"] / 1024 / 1000);
$extension = substr($fileName, strrpos($fileName, "."));
$extension = strtolower($extension);
move_uploaded_file($_FILES['Filedata']['tmp_name'], $store_dir.$new_name.$extension);

那么如何获取上传文件的路径,甚至只是新文件名。

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

你应该从脚本中返回一些json。

echo json_encode(array('file'=&gt; $ _FILES ['Filedata'] ['tmp_name'],$ store_dir。$ new_name。$ extension));

然后通过javascript处理它