使用 jQuery 生成一个文件并将其传递给 PHP

generate a file using jquery and pass it to php

本文关键字:PHP 文件 一个 jQuery 使用      更新时间:2023-09-26

大家,我正在做一个网站。它可以使用jquery生成MS excel文件并下载。问题是我希望这个生成的文件可以使用php作为电子邮件中的附件发送,那么首先如何将生成的文件传递给php?

以下简化的代码说明了我的JavaScript代码:

$(document).ready(function() {
$("#excelExport").click(function() {
    var fileexample;//file declaration before generation
    ....//generate the file
    fileexample.click();//download the file
    return fileexample;
});});

我尝试了一些解决问题的方法如下,仅供参考:

  1. 使用 jquery ajax POST 请求将 fileexample 变量传递给 php 服务器,但它无法正常工作。它只能在传递字符串等普通变量时起作用。

  2. 将 JavaScript 代码和 PHP 代码放在一个 PHP 文件中。但是我不知道如何在php代码中调用javascript文件示例变量。

  3. 将 JavaScript 代码和 PHP 代码放在一个 PHP 文件中,并使用 PHP 生成 MS Excel 文件。但是如何在php代码中调用javascript普通变量,如document.getElementById("XXX")。

希望有人能帮助我,提前非常感谢。

从标题来看,从谷歌上找到的这样做的库可能是

http://excelbuilderjs.com/

正如第一页上很好地解释的那样,这样做的主要原因是避免联系服务器。否则,没有充分的理由在客户端上创建 excel,然后将其发送到您的服务器。

关于你的方法,

1.您可以将客户端创建的 xml 数据从 js 发布到服务器 jQuery ajax 发布到 Web 服务

2.It 不可能在 PHP 中调用 js 代码。Javascript在客户端执行,php在服务器端执行。您只能在服务器端的 php 代码中准备将在客户端执行的 js。

3.这可能是朝着正确的方向发展。在服务器端使用 php 准备 xls 文件,并通过 ajax 访问页面或 js 调用将其作为结果提供给 php 调用。然后,您可以允许从生成的 php 页面或通过 js 下载文件作为对 ajax 调用的响应。