1
我正在試圖制定一個方案,其中Ajax調用upload.php並且upload.php將在消息中返回成功或失敗。我試圖在PHP腳本中使用echo「successs」,希望xhr.responseText能夠收到消息。但是alert(xhr.responseText)是一個空行。然後它發生在我身上,xhr.responseText只能使用GET而不使用POST?如果是這樣,我怎麼才能讓它的PHP腳本可以返回一個自定義消息?我不想使用HTTP狀態碼......我寧願學習如何儘可能地做自定義消息。PHP腳本返回AJAX的responseText從POST?想用AJAX POST返回消息
沒有jQuery,請。
<?php
$tmp_name = $_FILES['file1']['tmp_name'];
$path = "/trunk";
$name = $path . DIRECTORY_SEPARATOR . $_FILES['file1']['name'];
$success = move_uploaded_file($tmp_name, $name);
if ($success) {
echo "good";
} else {
echo "bad";
}
?>
}
function uploadPHP() {
var xhr = new XMLHttpRequest(),
form = document.getElementById("uploadForm");
xhr.open("POST", "php/upload.php", true);
xhr.send(new FormData(form));
alert(xhr.responseText);
}
謝謝,但這不是我正在尋找的。我想向客戶端發回一個自定義消息,現在無論現在xhr.responseText顯示一個空行......所以根問題仍然存在。另外,我只在本地網絡服務器上使用300kb等小文件...所以時間很短。 – dman
我不確定你的意思,XHR調用將返回你的腳本將打印到屏幕上的任何內容。我不確定你爲什麼要避免使用狀態碼。所有的狀態代碼都在檢查以確保您的請求已成功完成,然後再嘗試在腳本中打印消息。 – frosty