如何通过ajax传递文件数组数据以及如何通过php文件接收数据?
请将此问题的示例代码发给我。我有FormData的数据($(this)[0])但是获取了一些问题。第一次没有从文本区域获取任何数据(刷新页面,即第一次加载页面后)。但第二次我得到了(不刷新页面)。
我已经制作了一些代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script src="jquery-1.6.4.min.js" type="text/javascript"></script>
</head>
<body>
<script>
$(document).ready(function() {
$("form#formD").submit(function(event){
event.preventDefault();
var name = $("#name").val();
var text = $("#text").val();
var upload = $("#upload").val();
$.ajax({
type: "POST",
url: "test.php",
data: {"name" : name, "" : text, "upload" : JSON.stringify(upload)},
dataType: 'json',
async: false,
cache: false,
contentType: false,
processData: false,
beforeSend: function(){ $("#send").val('Sending...'); },
success: function( html ){
alert( html );
$("#send").val('send');
}
});
return false;
});
});
</script>
<form id="formD" action="" method="POST" enctype="multipart/form-data" accept-charset="utf-8">
<label>File name</label>: <input type="text" name="name" id="name" required /><br /><br />
<label>File Description</label>: <textarea id="text"></textarea><br /><br />
<label>Select File</label>: <input type="file" name="upload[]" id="upload[]" required /><br />
<input type="submit" value="send" id="send" />
</form>
</body>
</html>
答案 0 :(得分:1)
在PHP文件中,您将使用超级全局$ _POST。 这是通过POST命令传递的所有数据的数组。
要遍历它,就像
foreach($_POST as $sPostKey => $sPostValue) {
// do stuff here
}
请记住使用json_decode将JSON转换为PHP中可用的内容。