duan97689 2015-01-02 09:40
浏览 15
已采纳

图像未通过ajax发布(未提交表单)

My form is -

<form id="fileupload" method="post" enctype="multipart/form-data">
     <input type="file" id="headerimage" spellcheck="true" class="typography" name="headerimage">
</form>

My ajax code is -

var fileData = new FormData($('#fileupload'));
            fileData.append('imagefile', $('#headerimage')[0].files);
            $.ajax({
                    type    : 'post',
                    data    : fileData,
                    url     : 'UploadImage.php',
                    dataType: 'json',
                    processData: false,
                    success : function(data)
                    {
                        alert("done");
                    },
                });

Php code -

<?php
    # Data Base Connection
    require_once('conn/dbConn.php');
    var_dump($_REQUEST);
    if (!empty($_FILES)) {
        var_dump($_FILES);
    }

Please Help. On the php page i am not getting file data.

  • 写回答

4条回答 默认 最新

  • dongmie3526 2015-01-02 10:42
    关注

    JS code -

                var form = document.getElementById('fileupload');
                var fileInput = document.getElementById('headerimage');
                var file = fileInput.files[0];
                var formData = new FormData();
                var filename = '';
                formData.append('file', file);
                var xhr = new XMLHttpRequest();
                xhr.onreadystatechange = function() {
                    if (xhr.readyState == 4) {
                        filaname = xhr.responseText;
                    }
                }
                // Add any event handlers here...
                xhr.open('POST', form.getAttribute('action'), true);
                xhr.send(formData);
    

    PHP code -

    <?php
    # Data Base Connection
    require_once('conn/dbConn.php');
    if (!empty($_FILES)) {
        $file = $_FILES;
        if ($file['file']['error'] == 0) {
            $name    = explode('.', $file['file']['name']);
            $newName = "header.".$name[count($name)-1];
            if (move_uploaded_file($file['file']['tmp_name'], "../assets/Themes/Default/".$newName)) {
                echo $newName;
                exit;
            }
        } else {
            echo "";
            exit;
        }
    } else {
        echo "";
        exit;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥30 关于用python写支付宝扫码付异步通知收不到的问题
  • ¥50 vue组件中无法正确接收并处理axios请求
  • ¥15 隐藏系统界面pdf的打印、下载按钮
  • ¥15 MATLAB联合adams仿真卡死如何解决(代码模型无问题)
  • ¥15 基于pso参数优化的LightGBM分类模型
  • ¥15 安装Paddleocr时报错无法解决
  • ¥15 python中transformers可以正常下载,但是没有办法使用pipeline
  • ¥50 分布式追踪trace异常问题
  • ¥15 人在外地出差,速帮一点点
  • ¥15 如何使用canvas在图片上进行如下的标注,以下代码不起作用,如何修改