ファイルのアップロードが完了した後にメッセージを表示する JavaScript 関数を以下に示します。
function stopVideoUpload(success) {
var namevideofile = $('.fileVideo').val();
var result = '';
if (success == 1) {
result = '<span class="msg">The file was uploaded successfully!</span><br/><br/>';
$('.listVideo').append(namevideofile + '<br/>');
}
else {
result = '<span class="emsg">There was an error during file upload!</span><br/><br/>';
}
return true;
}
以下は、ファイルを正常にアップロードする別のページにある php スクリプトです。
if( file_exists("VideoFiles/".$_FILES['fileVideo']['name'])) {
$parts = explode(".",$_FILES['fileVideo']['name']);
$ext = array_pop($parts);
$base = implode(".",$parts);
$n = 2;
while( file_exists("ImageFiles/".$base."_".$n.".".$ext)) $n++;
$_FILES['fileVideo']['name'] = $base."_".$n.".".$ext;
move_uploaded_file($_FILES["fileVideo"]["tmp_name"],
"VideoFiles/" . $_FILES["fileVideo"]["name"]);
$result = 1;
}
else
{
move_uploaded_file($_FILES["fileVideo"]["tmp_name"],
"VideoFiles/" . $_FILES["fileVideo"]["name"]);
$result = 1;
}
?>
<script language="javascript" type="text/javascript">window.top.window.stopImageUpload(<?php echo $result;?>);</script>
var namevideofile
ファイル入力値 (.fileVideo はファイル入力のクラス) から値を取得する必要があることを除いて、アップロードが完了すると、サーバー内のファイルに付けられる名前は var namevideofile になります。 . したがって、php コードで述べたように、video.png として知られる 2 つのファイルがある場合、ファイルが存在する場合はファイル名の末尾に数字を追加して、サーバーに video.png と video1.png を作成します。
したがって、を追加namevideofile
すると、両方のファイルのアップロードが完了した後、video.png と video1.png が表示されるはずです。の問題はvar namevideofile = $('.fileVideo').val();
、両方のファイル名が正しくない video.png として表示されることです。
var namevideofile
アップロード後にサーバーからファイル名を取得するように変更する方法を知っている人はいますか? 問題は、php スクリプトが JS 関数 (QandATable.php) とは別のページ (videoupload.php) にあるため、ここで ajax を使用する必要があるかどうかです。
これをどのようにコーディングできるかの例を提供できる人は誰でも私にとって非常に役に立ちます:)