【问题标题】:PHP Get Input Value for File NamePHP 获取文件名的输入值
【发布时间】:2019-01-16 10:55:39
【问题描述】:

当我点击一个按钮时,我有一个可以导出到 excel 的 crud 页面。

<button type="button" class="btn btn-primary" onClick="document.location.href='export/xls.php'" data-dismiss="modal">Save</button>

我想用自定义文件名导出它,所以用户可以写他们想要的文件名。在 xls.php 我使用默认文件名

$filename = export;
$ext = "xlsx";
header("Content-Disposition: attachment; filename=".$namafile.".".$ext."");

我想用用户输入替换 $filename。我尝试使用 $_POST,但不起作用。

<form class="form-horizontal" action="export/xls.php" method="post">
   <div class="form-group">
      <label for="filename" align="right" class="col-sm-3"><H4>File Name</H4></label>
      <div class="col-sm-6">
         <input type="text" name="filename" class="form-control" id="filename">
      </div>
   </div>
   <input type="submit" class="btn btn-primary" onClick="document.location.href='export/xls.php'" data-dismiss="modal">
</form>

在 xls.php 中

$filename = $_POST['filename'];

有没有办法在 xls.php 上获取输入值?

【问题讨论】:

  • 要么将表单提交到 xls.php 并从 $_POST 变量中获取文件名,要么可以使用 JavaScript 并将文件名作为 GET 参数发送到脚本。

标签: php post input filenames export-to-excel


【解决方案1】:

您实际上并没有POSTing 表单,因为onClick 在表单提交之前更改了您的位置。

你需要这样做:

<form class="form-horizontal" action="export/xls.php" method="post">
   <div class="form-group">
      <label for="filename" align="right" class="col-sm-3"><H4>File Name</H4></label>
      <div class="col-sm-6">
         <input type="text" name="filename" class="form-control" id="filename">
      </div>
   </div>
   <input type="submit" class="btn btn-primary">
</form>

【讨论】:

  • 刚刚添加了一个解释性说明,因此答案更具可读性。
  • 但是如果我不添加 onclick(),他们什么也不做,只是关闭模式。我应该在 xls.php 上添加一些东西吗?
  • 你可以看到我更新的答案,你需要从 按钮中删除 data-dismiss="modal" ,我猜它在提交之前关闭模态弹出窗口,
  • 当我点击它时他们仍然没有做任何事情。看起来提交按钮不像 onClick="document.location.href='export/xls.php'" 那样运行
猜你喜欢
  • 2021-05-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-09
  • 1970-01-01
  • 2016-11-02
  • 2013-12-20
相关资源
最近更新 更多