下面我有在当文件停止上传,它会显示一个消息上传是否成功与否,然后更重要的是显示上传的使用下面这段代码的文件名功能:如何从服务器使用javascript检索文件名称的名称?
$('.listImage').append(nameimagefile + '<br/>');
这上面的代码检索从文件输入中选择的文件的名称。这个问题虽然是我不想在文件输入中输入文件的名称。相反,我想要上传到服务器的文件的名称。
例如,如果我上传了两个都是tulips.png的文件,它们在服务器上被保存并上传为tulips.png和tulips2.png,但由于我使用的是$('.listImage').append(nameimagefile + '<br/>');
,因此它将两个文件名都显示为郁金香.png',这不是我想要的。
因此,这是我决定我不想从输入文件的值退出文件的名称,而是在文件中上传时保存的名称。
如何在JavaScript函数中对此进行编码?
JavaScript函数和PHP脚本是在单独的页面,但我确实在PHP脚本中使用一个回调函数的JavaScript函数:
下面是表单代码:
<form action='imageupload.php' method='post' enctype='multipart/form-data' target='upload_target' onsubmit='stopImageUpload(this);' class='imageuploadform' >
<p>Image File: <input name='fileImage' type='file' class='fileImage' />
<input type='submit' name='submitImageBtn' class='sbtnimage' value='Upload' />
</p>
<ul class='list'></ul>
</form>
下面是的JavaScript函数获取文件的名称,如果文件是成功与否将显示一条消息:
function stopImageUpload(success){
var nameimagefile = $('.fileImage').val();
var result = '';
if (success == 1){
result = '<span class="msg">The file was uploaded successfully!</span><br/><br/>';
$('.listImage').append(nameimagefile + '<br/>');
}
else {
result = '<span class="emsg">There was an error during file upload!</span><br/><br/>';
}
return true;
}
最后下面是PHP脚本与javascript回调函数。如果文件存在或不存在于服务器的文件夹中,则它上传文件。如果存在,那么它赋予它一个不同的文件名通过文件名的末尾添加一个名字,如果它不存在,那么上传具有相同名称的文件:
if(file_exists("ImageFiles/".$_FILES['fileImage']['name'])) {
$parts = explode(".",$_FILES['fileImage']['name']);
$ext = array_pop($parts);
$base = implode(".",$parts);
$n = 2;
while(file_exists("ImageFiles/".$base."_".$n.".".$ext)) $n++;
$_FILES['fileImage']['name'] = $base."_".$n.".".$ext;
move_uploaded_file($_FILES["fileImage"]["tmp_name"],
"ImageFiles/" . $_FILES["fileImage"]["name"]);
$result = 1;
}
else
{
move_uploaded_file($_FILES["fileImage"]["tmp_name"],
"ImageFiles/" . $_FILES["fileImage"]["name"]);
$result = 1;
}
?>
<script language="javascript" type="text/javascript">window.top.window.stopImageUpload(<?php echo $result;?>);</script>
希望这是你需要的所有信息并感谢你。
如果有一种php方式,你认为比javascript更好的方式来检索文件的名称,并能够把它放在JavaScript函数中,那么我也接受这些想法:) – user1324106 2012-04-18 06:48:39