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条)

报告相同问题?

悬赏问题

  • ¥15 vue3+express部署到nginx
  • ¥20 搭建pt1000三线制高精度测温电路
  • ¥15 使用Jdk8自带的算法,和Jdk11自带的加密结果会一样吗,不一样的话有什么解决方案,Jdk不能升级的情况
  • ¥15 画两个图 python或R
  • ¥15 在线请求openmv与pixhawk 实现实时目标跟踪的具体通讯方法
  • ¥15 八路抢答器设计出现故障
  • ¥15 opencv 无法读取视频
  • ¥15 按键修改电子时钟,C51单片机
  • ¥60 Java中实现如何实现张量类,并用于图像处理(不运用其他科学计算库和图像处理库))
  • ¥20 5037端口被adb自己占了