微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript – 使用php浏览文件时,写入文件的完整路径

到目前为止,我写了一个脚本,以便我可以浏览一个文件并查看文件的打印名称.这是脚本:
<form action="upload.PHP" method="post" enctype="multipart/form-  data">
 Select: 
 <input type="file" name="filetoUpload" id="filetoUpload">
 </form>

当我点击浏览按钮并选择一个文件时,只有文件名称被打印在我的网页上(我的网络浏览器是Firefox,而我正在使用本地服务器).有没有办法打印文件的整个地址?到目前为止,我在网络上发现的大多数是提前知道“/ path / to / file”的方法.但是如果随机选择一个文件怎么办?如果没有办法做到这一点,因为安全问题,根据:

How to get full path of selected file on change of <input type=‘file’> using javascript,jquery-ajax?,

有可能用C,C,HTML等吗?

我真的需要显示目录的本地路径.什么是替代品?答案是不能做的?我发现这个网站http://www.htaccesstools.com/articles/full-path-to-file-using-php/

不知道它是如何工作的.

一个选择是定义一个固定的路径,让用户只选择该目录,因为我知道我可以打印出来.是否有意义?

解决方法

较老的浏览器用于允许无限制地访问完整的路径,所以这不是不可能的,但由于安全性问题,您的最佳答案将是一个解决方法.

IE浏览器

HTA应用

如果你在本地工作,一个选择是你可以作为HTML应用程序来运行你的页面.不幸的是,它使用Internet Explorer作为引擎.但是如果你可以摆脱一个HTA,这样做就是你想要的:

<!--test.hta-->
<HTML>
<HEAD>
<HTA:APPLICATION ID="testFile" BORDER="thick" BORDERSTYLE="complex"/>
<TITLE>HTA - Test file</TITLE>
</HEAD>
<BODY>
<input type="file" onchange="alert(this.value)">
</BODY>
</HTML>

可信站点

一个更好的选择,只是使用Internet Explorer,然后将您的页面添加到Internet Explorer的受信任的站点.那么你的解决方案就像:

< input type =“file”id =“fileUpload”onchange =“alert(this.value)”>

以下是将网站添加到受信任站点方法


自定义安全级别

您还可以在Internet Explorer中全局启用此行为:

火狐

Firefox似乎没有支持抓取完整的URL.但是如上所述here似乎存在一个“mozFullPath”属性
https://developer.mozilla.org/en-US/docs/Web/API/File/mozFullPath

我在浏览器中尝试过,似乎是一个不存在的属性.我无法找到有关如何利用此属性的任何文档.但是,这是一个值得注意的财产,以防万一它变得有用.

HTML5

在HTML5中,您可以编写this.files [0]来引用File对象.属性包括“name”和“lastModifiedDate”,“size”和“type”,如下所述:
https://developer.mozilla.org/en-US/docs/Web/API/File

在HTML5中,您实际上可以使用blob并从所选文件创建一个对象网址并显示预览.这可以通过URL.createObjectURL(…)完成,然后创建一个图像并将其src设置为生成的临时url.见this fiddle.(credit goes to this post)

最后,你可能会非常喜欢:

https://blueimp.github.io/jQuery-File-Upload/

原文地址:https://www.jb51.cc/js/152150.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐