【问题标题】:AJAX: Image Upload with a text input field dataAJAX:带有文本输入字段数据的图像上传
【发布时间】:2020-09-05 00:09:01
【问题描述】:

我的目标很简单:我想编写一个 ajax,其中输入字段“gallery_id”的值将与输入字段“fileToUpload”上的文件一起提交。我这样做的原因是用这种格式更改文件的名称:$gallery_id.$incrementresult。不要介意 $incrementresult,因为我已经为此编写了代码

这是我复制的示例脚本。对于阿贾克斯

**Note that #upload is a button**
$('#upload').on('click', function() {
            var file_data = $('#fileToUpload').prop('files')[0];   
            var form_data = new FormData();                  
            form_data.append('file', file_data);                
            $.ajax({
                url: 'upload.php', 
                dataType: 'text', 
                cache: false,
                contentType: false,
                processData: false,
                data: form_data,                         
                type: 'post',
                success: function(result){
                    alert(result);
                }
             });
        });

对于upload.php:

if ( 0 < $_FILES['file']['error'] ) {
   echo 'Error: ' . $_FILES['file']['error'] . '<br>';
}
else {
   move_uploaded_file($_FILES['file']['tmp_name'], 'uploads/project_photos/' . $_FILES['file']['name']);
   echo "SUCCESS!";
}

我应该如何在脚本上实现gallery_id?

【问题讨论】:

    标签: php ajax file-upload


    【解决方案1】:

    您可以添加以下内容:

     $("#upload").click(function (e) {
            e.preventDefault();
            var formData = new FormData($(this).parents('form')[0]);
            var galleryId  = 111; //Your value
            formData.set('gallery_id', galleryId); //add galleryId to formData
            axios.post('/upload.php', formData)
                .then(function (response) {
                    //
                })
                .catch(function () {
                    //
                })
        });
    

    【讨论】:

    • 在upload.php 文件中,代码如何从$_FILES 中识别gallery_id?应该如何接收?我试过了,但没有用:$gallery_id = $_POST['gallery_id']
    • var_dump($_POST);
    猜你喜欢
    • 2019-07-05
    • 2012-11-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-30
    • 2020-03-30
    • 2017-02-03
    • 2020-07-30
    相关资源
    最近更新 更多