gpt4 book ai didi

javascript - Ajax - 通过 ajax 将输入文件和附加变量发送到 php 文件

转载 作者:行者123 更新时间:2023-11-29 16:06:05 24 4
gpt4 key购买 nike

我正在尝试通过 ajax 发送 input fileinput text。因为我将把这个特性添加到我现有的函数中,它有很多其他变量,所以我不能像这里使用的那样简单地使用发送整个 Form

Uploading both data and files in one form using Ajax?

这是它的基本要点

我的 HTML

<input type='text' name='text' id='text'>
<input type='file' name='media' type="file" / id='media'>
<input type="button" value="Upload" name='submit'/>

我的 Ajax

$(":button").click(function(){
var myFormData = new FormData();
var media = document.getElementById('media');
var variable = 'foo';
myFormData.append('pictureFile', media.files[0]);
var text = $("#text").val();
$.ajax({
type: 'POST',
url: 'upload.php',
data:
{
pictureFile: myFormData,
text: text,
var: variable,
},
cache: false,
success: function (data) {
alert(data);
},
processData: false,
contentType: false,
});
});

PHP

include_once ("connection.php");
if ($_SERVER['REQUEST_METHOD'] == 'POST'){

$temp_name = $_FILES['pictureFile']['name'];
$pic_type = $_FILES['pictureFile']['type'];

$pic_temp = $_FILES['pictureFile']['tmp_name'];
$pic_path = "images/";
move_uploaded_file($pic_temp,'images/'.$temp_name);

}

因此,如我的代码所示,我需要一种方法来从 data 发送那些 var mediavar textvar variable :{},upload.php

最佳答案

您可以通过使用append

来实现
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Jquery Ajax File Upload</title>
</head>
<body>
<input type='text' name='text' id='text'>
<input type="file" name="media" id="media">
<div class="result"></div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script>
$(document).ready(function(){
$('#media').change(function(e){
var file = this.files[0];
var form = new FormData();
form.append('media', file);
form.append('text', $('#text').val());
$.ajax({
url : "upload.php",
type: "POST",
cache: false,
contentType: false,
processData: false,
data : form,
success: function(response){
$('.result').html(response.html)
}
});
});
});
</script>
</body>
</html>

关于javascript - Ajax - 通过 ajax 将输入文件和附加变量发送到 php 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41949148/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com