※ ChatGPTを利用し、要約された質問です(原文:FormDataによるアップロード)
FormDataによるアップロード
下記のサイトを参考にファイルのアップロードに挑戦しています。
http://www.b-prep.com/blog/?p=1877
これだけでajaxを使ってファイルのアップロードが出来る。
とあったので、下記のように書いてみたのですが、
サーバー上にファイルがアップロードされません。
なぜでしょうか。
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
</head>
<body>
<form id="content" action="">
<input type="file" name="hogeFile">
<input type="submit" value="send">
</form>
<script>
$("#content").on("change", 'input[type="file"]', function (e) {
e.preventDefault();
var formData = new FormData();
var files = this.files;
$.each(files, function (i, file) {
formData.append('file', file);
});
$.ajax({
url: 'temp',
type: 'post',
data: formData,
processData: false,
contentType: false,
dataType: 'html',
complete: function () { },
success: function (res) { }
})
});
</script>
</body>
</html>
お礼
回答ありがとうございます。 やはりHTMLとJavascriptだけではサーバに配置することは できないのですね。 サーバ側にはどのようなプログラムを用意すれば 良いのでしょうか。 CGIやPHPなどはよくわかりませんが、 asp.netなら多少理解できます。
補足
asp.netでupload側のプログラムを ジェネリックハンドラーを使って作り 自己解決できました。 ありがとうございました。