重複の可能性:
送信は成功するが、結合フォームでアップロードが機能しない
「ファイルのみを送信する」というタイトルの下にあるhereのコードを使用しています。コードは非常にシンプルで小さいですが、「ファイル」を console.log すると、場所がありません。webkitrelativepath は「」です。送信時にファイル名、サイズなどを確認できます。それを自分の feedback.php ファイルに投稿し、そこから電子メールに添付する必要がありますが、ファイルを formData から取り出してアップロード フォルダーにアップロードする方法がわかりません。 - メールして...
ありがとう。
編集:
現在使用しているコード:
var fileInput = document.getElementById('file-upload-field');
var file = fileInput.files[0];
var formData = new FormData();
formData.append('file', file);
console.log(file);
$.ajax({
url: baseUrl + "feedback.php",
data: file,
cache: false,
contentType: false,
processData: false,
type: 'POST',
success: function(file){
alert(file);
}
});
そして私のfeedback.phpで
foreach($_FILES as $file){
$target_path = "uploads/";
$target_path = $target_path .basename($file['name']);
if(move_uploaded_file($file['tmp_name'], $target_path)) {
echo "the file ".basename($file['name'])." has been uploaded";
}
else {
echo "there was an error";
}
$mail->AddAttachment($target_path);
}
これはどこにもファイルをアップロードしたり添付したりしません...