我有一個表單,用戶提交圖像,提交後圖像URL將顯示在輸入文本字段。表單數據通過Ajax傳遞給PHP。圖像然後被上傳到服務器。我已經實現了提交系統,但我不知道如何在輸入文本字段中顯示上傳的URL,以便用戶可以看到它。我不希望頁面刷新,這一切都是動態發生的。提交後顯示圖像URL
這裏是我的代碼:
HTML
<form class="image_upload" method="post" action="">
<input name="server_upload" type="file">
<input type="text" name="image_url" readonly>
<input type="submit" value="UPLOAD TO SERVER">
</form>
的jQuery /阿賈克斯
$('.image_upload').on('submit', function(e) {
e.preventDefault();
e.stopImmediatePropagation();
if ($('.image_upload').valid())
{
$.ajax({
type: 'POST',
url: '',
data: new FormData(this),
processData: false,
contentType: false,
success: function(data) {
}
})
}
})
PHP
if (isset($_FILES["server_upload"]))
{
$name = $_FILES["server_upload"]["name"];
$tempName = $_FILES["server_upload"]["tmp_name"];
$target_file = $_SERVER['DOCUMENT_ROOT'] . "/stories/media/images/$name";
if (getimagesize($target_file) == true)
{
$ext = pathinfo($name, PATHINFO_EXTENSION);
$name = basename($name, "." . $ext);
$name = $name . uniqid() . "." . $ext;
$target_file = $_SERVER['DOCUMENT_ROOT'] . "/stories/media/images/$name";
}
move_uploaded_file($tempName, $target_file);
}
我希望$ target_file在用戶提交圖像後在輸入文本表單域中顯示。我該如何做到這一點?你有
您可以使用會話,這是一個選項,並將其設置爲變量/會話數組並在輸入值中的條件語句中 –
@ Fred-ii-如何在沒有輸入文本字段的情況下輸出會話正在刷新頁面? – user2896120
從你的PHP函數輸出任何你需要的東西,也許'echo $ target_file' - 在你的AJAX函數中讀取它(它會在你的'success:'代碼中成爲'data')...用'data'做些事情來顯示你需要的地方......或者不是從一般提示中找出自己的想法,只是使用已發佈的答案 - 這正是你想要的東西 –