Javascript 如何使用PHP通过ajax在特定的服务器*文件夹中保存文件。不通过浏览器下载

Javascript 如何使用PHP通过ajax在特定的服务器*文件夹中保存文件。不通过浏览器下载,javascript,php,ajax,phpexcel,Javascript,Php,Ajax,Phpexcel,我正在使用PHPExcel生成一个excel文件,我需要通过使用ajax调用我的PHP文件来将其保存在一个特定的服务器文件夹(以避免打开额外的窗口) 我发现post和第二个答案有一些接近我需要的东西,但这会通过浏览器下载文件,我不希望这样。我只想将.xls文件保存在服务器的特定文件夹中,而不是保存在我的计算机中 这就是我所拥有的: PHP: $objWriter = new PHPExcel_Writer_Excel5($objPHPExcel); $objWriter->save('..

我正在使用PHPExcel生成一个excel文件,我需要通过使用ajax调用我的PHP文件来将其保存在一个特定的服务器文件夹(以避免打开额外的窗口)

我发现post和第二个答案有一些接近我需要的东西,但这会通过浏览器下载文件,我不希望这样。我只想将.xls文件保存在服务器的特定文件夹中,而不是保存在我的计算机中

这就是我所拥有的:

PHP

$objWriter = new PHPExcel_Writer_Excel5($objPHPExcel);
$objWriter->save('../pdf-totext/'.$_POST["folder"].'/'.$_POST["filename"]); //save the file here
 $.ajax({
  type:'POST',
  url:'php/libs/PHPExcel-1.8/F29.php',
  data: {folder:folder,filename:filename}
});
JS

$objWriter = new PHPExcel_Writer_Excel5($objPHPExcel);
$objWriter->save('../pdf-totext/'.$_POST["folder"].'/'.$_POST["filename"]); //save the file here
 $.ajax({
  type:'POST',
  url:'php/libs/PHPExcel-1.8/F29.php',
  data: {folder:folder,filename:filename}
});
所以可以保存一个PHPExcel生成的.xls文件,通过AJAX调用我的PHP文件

编辑

我对服务器端和客户端的事情没意见,只是我想通过ajax调用我的PHP文件,所以我的PHP文件将.xls保存在服务器文件夹中

编辑2

如果我移动到另一个类似这样的窗口(并在PHP文件中使用GET而不是POST),它会工作:


但是如果我通过AJAX调用PHP文件不起作用。

它是
PHP
Excel。。。PHP不在客户端运行,它在服务器上运行-因此默认情况下它会将文件保存到服务器上。。。AJAX用于将消息从javascript(客户端浏览器)发送到服务器(由PHP代码接收/处理),并接收返回的数据

您使用PHP编写PHPExcel代码,因此您已经在PHP(Web服务器)端,因此不需要javascript/AJAX—除非您希望允许用户单击按钮并请求将PHPExcel生成的文件从服务器下载到客户端

顺便说一下,PHP无法访问本地文件系统,因此您无法告诉Web服务器在本地计算机上保存文件的位置。PHP将把文件保存到Web服务器上


但是,如果您的Web服务器是本地的(例如
xampp
mamp
或类似的),那么情况就不同了。让我们知道,如果这是你正在做的。(您仍然不会使用AJAX保存文件-但PHP可以访问本地驱动器,因为Web服务器位于本地驱动器上)

是的,我使用XamppI编辑了整篇文章,请参阅我的编辑。第一个问题:我不明白-这是一个创建PHPExcel电子表格的PHP文件-为什么需要AJAX进行通信?或者你的意思是PHPExcel进程是通过一个网页启动的,你需要这个网页来告诉PHP文件保存文件的位置?第二个问题:当你说
时,我只想把.xls文件保存在服务器的一个特定文件夹中,不在我的计算机中。
你的意思是
.xls
文件应该保存到
xampp/htdocs
文件夹下的特定子文件夹中(因为该文件夹是xampp中的Web服务器)。AJAX发出HTTP请求,它不会“保存”任何内容。“但我不想通过浏览器下载文件”——那你想要什么?一个脚本,可以将文件下载到网站访问者的计算机上,甚至不用询问他们?这当然是不可能的。@04FS我已经编辑了整篇文章,请查看我的编辑工具。那么还有什么实际问题需要解决呢?PHP代码已经包含对
$objWriter->save
的调用,该调用将文件存储到给定位置。如果您对当前的AJAX调用不满意,请返回不同的响应。@04FS问题是PHPExcel不工作如果我通过AJAX调用我的PHP文件,它只是不保存文件。它怎么不工作?你有错误吗?它没有创建文件吗?到目前为止,您做了哪些尝试和调试工作?