0

尝试将文件上传到我的服务器时遇到问题。我正在使用uploadify插件将文件上传到我的服务器,然后将文件名存储在数据库中。

问题是 uplodify 的行为就像文件已上传且没有错误但没有上传任何内容。

我在 Windows 2008 R2 服务器上运行 PHP

以下是我处理实际上传的 php 代码。

<?php

require("../requires/LDAP_connection.php");
require("../requires/APP_configuration.php");
require("../requires/PHP_generic_functions.php");

//Include connection class
require('../classes/connection.php');
require('../requires/user_authentication.php');  //this file must be placed under the connection class NOT before

define('ROOT_SYS', dirname(__FILE__).'/');

// Define a destination
$targetFolder = '';
$verifyToken = '100';
$actualToken = '';
$fileTypes = array('jpg','jpeg','gif','png');

if(isset($_POST['upload_path'])){
    $targetFolder = $_POST['upload_path'];
}

if(isset($_POST['timestamp'])){
    $verifyToken = md5($_POST['timestamp']);
}

if(isset($_POST['token'])){
$actualToken = $_POST['token'];
}

if(isset($_POST['allowed_extentions'])){

    $types = explode(',', $_POST['allowed_extentions']);

    if(count($types) > 0 ){
        $fileTypes = $types;
    }
}


if (!empty($_FILES) && $actualToken == $verifyToken) {
    $tempFile = $_FILES['Filedata']['tmp_name'];
    $targetPath =  ROOT_SYS . $targetFolder;   //$_SERVER['DOCUMENT_ROOT']
    $new_filename = USER_ID . '_' . time() . '_' . str_replace(" ", "_", $_FILES['Filedata']['name']);
    $targetFile = $targetPath . $new_filename;

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

    if (in_array($fileParts['extension'],$fileTypes)) {
        move_uploaded_file($tempFile,$targetFile);
        echo trim($new_filename);
    } else {
        echo 'INVALID';
    }
}
?>

以下是我的 javascript

<?php $timestamp = time();?>

    <script type="text/javascript">
    $(function() {
        $('#file_upload').uploadify({
            'formData'     : {
                'timestamp' : '<?php echo $timestamp;?>',
                'token'     : '<?php echo md5($timestamp);?>',
                'upload_path': 'add-ons/ticketing_system/uploads/',
                'allowed_extentions': 'jpg,jpeg,gif,PNG,JPG,png,zip,rar,doc,docx,cvs,xls,xlsx,txt'
            },
            'auto' : true,
            'swf'      : '../../includes/uploadify.swf',
            'uploader' : '../../includes/uploadify.php',
            'fileSizeLimit' : '10MB',
            'fileTypeExts' : '*.gif; *.jpg; *.JPG; *.png; *.PNG *.zip; *.rar; *.doc; *.docx; *.cvs; *.xls; *.xlsx; *.txt;',
            'onUploadSuccess' : function(file, data, response) {
                if(data != 'INVALID'){
                    $('#attached_files').append('<input type="hidden" name="attachments[]" value="'+ $.trim(data) +'" />');
                } else {

                    alert('Invalid File Type');
                }
            }

        });
    });
</script>

我究竟做错了什么?为什么它没有上传任何东西,也没有给我任何错误?

谢谢

4

1 回答 1

0

Uploadify 有一个调试模式来帮助你解决这样的问题:http ://www.uploadify.com/documentation/uploadifive/debug-2/

我通常寻找的东西是权限错误......也许你的身份验证方法。

于 2013-08-27T20:38:49.403 回答