[英]image upload in server using ajax call and php file
我有一個輸入文件...我想將附件上傳到服務器,並且單擊“上傳”按鈕時,消息上傳成功...文件未發送消息。 (上載的圖像必須保存在上載文件夾中。)
index.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Camera </title>
<link rel="stylesheet" href="sample.css" type="text/css" media="screen">
</head>
<body>
<form id="form" method="post" enctype="multipart/form-data">
<div style="margin-top:3rem;margin-left: 30%;">
<input type="file" name="file1" id="take-picture" accept="image/*" >
</div>
<div style="margin-top: 2rem; margin-left: 10%;">
<img src="about:blank" alt="" id="show-picture" height="50%" width="50%">
</div>
<div style="margin-top: 3rem;margin-left: 30%;">
<button id="upload">Upload</button>
</div>
</form>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
<script src="sample.js"></script>
</body>
</html>
sample.js
$(function() {
$('#form').submit(function(e) {
e.preventDefault();
data = new FormData($('#form')[0]);
console.log('Submitting');
alert(data);
$.ajax({
type: 'POST',
url: 'upload.php',
data: data,
cache: false,
contentType: false,
processData: false
}).done(function(data) {
console.log(data);
alert(data);
}).fail(function(jqXHR,status, errorThrown) {
console.log(errorThrown);
console.log(jqXHR.responseText);
console.log(jqXHR.status);
});
});
});
upload.php
<?php
if($_FILES['img']['error'] > 0) die('Error ' . $_FILES['file']['error']);
if(empty($_FILES['img']['name'])) die('No file sent.');
$tmp = $_FILES['img']['tmp_name'];
if(is_uploaded_file($tmp))
{
if(!move_uploaded_file($tmp, '/uploads/')) echo 'error !';
}
else echo 'Upload failed !';
?>
folder---- uploads (where images have to be saved)`enter code here`
PHP中的$ _FILES鍵與表單上的輸入文件不匹配...首先使內容匹配...如果您的HTML
<input type="file" name="file1" id="file1" accept="image/*" >
然后在PHP上
$_FILES['file1']['error']...
$_FILES['file1']['name']...
除了...
您是否檢查了要存儲文件的文件夾的權限?
遠程用戶可以寫入/ uploads /嗎?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.