本文目錄一覽:
PHP里的ajax無刷新上傳圖片問題
html:
input id=”file” name=”file” type=”file”/
jquery:
var formData = new FormData();
formData.append(“file”, $(“#file”)[0].files[0]);
$.ajax({
xhr: function() {
var xhr = new window.XMLHttpRequest();
xhr.upload.addEventListener(“progress”, function(evt){
if (evt.lengthComputable) {
//這裡是上傳過程的實時,一般用於做進度條
}
}, false);
return xhr;
},
type: ‘POST’,
contentType:false,
processData:false,
url:”, //你php端的地址
data: formData,
}).done(function(d) {
console.log(d); //d是php的json返回
});
php端:
if ($_FILES[‘file’][‘error’] != 0) {
return ‘上傳錯誤’;
}
$file = $_FILES[‘file’][‘tmp_name’]; //這個是服務器接收到的臨時文件的路徑,就是文件已經在服務器上了
php,ajax。如何做到無刷新上傳圖片啊,關鍵是無刷新而且是圖片
最常見的做法有2種:
當選擇一個文件後,用JS動態的創建一個Iframe,Iframe內寫入一個隱藏的表單,然後讓表單提交;
利用Flash來實現上傳,但是缺點是必須手動的傳遞session_id,否則無法進行狀態維護;
請問如何用php實現實現頁面無刷新上傳圖片
1,頁面需要嵌入iframe
src是你另一個php程序,比如upload.php
2.form
提交的時候提交到iframe
3.upload.php判斷提交成功輸出一段js代碼,parent.document.getElemetById(“PID”).src=”成功後的圖片地址”;
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/227447.html