我在下面有一个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。所以,如果我有两个名为video.png的文件,正如我在我的php代码中所述,如果文件存在,那么在文件名末尾添加一个数字,这样就可以在服务器中创建video.png和video1.png。
因此,当我追加namevideofile
时,它应该在两个文件的上传完成后显示video.png和video1.png。 var namevideofile = $('.fileVideo').val();
的问题在于它将两个文件名都显示为video.png,这是不正确的。
所以有人知道如何更改var namevideofile
以便在上传后从服务器检索文件名吗?问题是php脚本位于JS函数(QandATable.php)的单独页面(videoupload.php)上,因此需要在此处涉及ajax。
任何能够提供如何编码的示例的人都会对我非常有帮助:))
答案 0 :(得分:0)
您可以echo
并将值存储在javaScript变量中:
var namevideofile = <php echo $filename; ?>;