Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将文件转换为url-javascript中的可下载文件_Javascript_Html_Url_Server_Upload - Fatal编程技术网

将文件转换为url-javascript中的可下载文件

将文件转换为url-javascript中的可下载文件,javascript,html,url,server,upload,Javascript,Html,Url,Server,Upload,有没有可能上传一个本地存储在我们的计算机、服务器中的文件,并有一个最终的url来下载它 像这个示例(这是一个excel文件): 我之所以需要这样做,是因为我使用的是API(在网页上用.xls文件进行excel预览),我们需要文件的url。您需要一些服务器端机制来处理上传的文件(例如PHP脚本或servlet等)。您不能使用Javascript直接访问服务器文件系统,因为Javascript在用户浏览器中本地运行。因此,只需创建一个简单的服务器端脚本来存储上传的文件并返回服务器端文件位置。在尝试

有没有可能上传一个本地存储在我们的计算机、服务器中的文件,并有一个最终的url来下载它

像这个示例(这是一个excel文件):


我之所以需要这样做,是因为我使用的是API(在网页上用.xls文件进行excel预览),我们需要文件的url。

您需要一些服务器端机制来处理上传的文件(例如PHP脚本或servlet等)。您不能使用Javascript直接访问服务器文件系统,因为Javascript在用户浏览器中本地运行。因此,只需创建一个简单的服务器端脚本来存储上传的文件并返回服务器端文件位置。

在尝试之前,您需要对此进行更多研究。这里有一个使用PHP的快速概述,我知道您指定了Javascript,但PHP在这方面非常擅长

您必须创建两个文件,一个html文件,您可以从中以图形方式上载该文件,另一个PHP文件,用于获取该文件并将其放到服务器上

HTML:

<form hidden action="upload.php" method="post" enctype="multipart/form-data">
    <input type="file" name="fileToUpload" id="fileToUpload" class="ui button">
    <input type="submit" value="upload" name="submit" class="ui primary button">
</form>
您应该将这两个文件都存储在公共html目录中,通常是unix上的
/var/www/html
。PHP文件需要允许其执行的权限。这其中有一些配置很难在网上解释,这只是向您展示了它如何工作的一个非常简单的抽象

在提交html表单时,单击submit按钮,执行
upload.php
(作为表单的操作),这将获取文件名并将其移动到服务器上的指定目录

然后,假设上载成功,远程文件名将与文件原始名称相同。假设我上传了
hello.txt
thisserver.net
,远程路径将是
thisserver.net/hello.txt

此代码假定您安装了Web服务器,例如。它还假设您已经配置了php来使用上述Web服务器


阅读了解更多信息。

您能用一些代码解释一下吗?我并不是真的做了很多php,所以@在开始开发web应用程序之前,我认为必须了解浏览器和服务器如何通过HTTP协议进行通信,以及客户端和服务器端代码如何相互补充。因此,我认为学习一个关于web应用程序开发的初学者教程是一个不错的选择。然后你会在旅途中少走单程路。
<?php
   $target_file = "where/to/upload/remotely" . basename($_FILES["fileToUpload"]["name"]);
   move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file) or die ("failed");
?>