【问题标题】:PHP multiple input buttons with same textarea具有相同文本区域的PHP多个输入按钮
【发布时间】:2016-06-13 10:00:31
【问题描述】:

有人可以帮我解决这样的问题吗(我是 php 新手,因此需要一点帮助)...

我有一个文本区域,我可以在其中输入一个或多个项目编号,并且我想要两个按钮,它们基于 SQL 查询工作:第一个将在页面上显示结果,第二个将数据导出到 Excel 中。

直接在网页上显示数据的部分已经为我工作了。但是我怎样才能做到这一点,基于第二个输入按钮(导出到 Excel)它会触发代码的不同部分,但使用文本区域中的相同值?

目前我的问题是,当我按下第二个按钮时,它也会触发部分代码,我在网页上显示数据,而在导出到 excel 时我需要忽略它。

目前我的 HTML 的一部分看起来像:

<div>
    <form action="main" method="post">
        <textarea name="project1" cols="30" rows="5" type="submit" placeholder="Enter Project Number('s)"/></textarea>
        <input value=" Submit " type="submit"/> <!-- Shows on web page -->
        <input name="excel" type="submit" value=" Export to Excel " /> <!-- Exports to Excel -->
    </form>
</div>  

【问题讨论】:

  • 使用 isset() 并为按钮命名并使用按钮名称检查条件。你清楚吗?
  • Textarea 没有类型但单独提交

标签: php html excel button input


【解决方案1】:

正如 Fred -ii 已经指出的那样,textarea 没有类型,它应该是

<textarea name="project1" cols="30" rows="5" placeholder="Enter Project Number('s)"/></textarea>

方法一
如果您希望表单中有多个提交按钮,您可以为每个按钮指定一个唯一的名称。
将它们唯一命名后,您可以检查设置了哪个参数以在 post to script 上执行不同的功能。

PHP

<?php
   if(isset($_POST['displayPage'])){
        echo $_POST['project1'] . "<br />\n";
   }
   if(isset($_POST['excel'])) {
        //put your excel export script here"
   }
?>

HTML

<input name="displayPage" type="submit" value="Submit" /> 
<input name="excel" type="submit" value="Export to Excel" /> 


方法二
或者,您可以为 ALL 按钮使用 同名,并根据 按钮。

PHP

<?php
if(isset($_POST['submit']) && $_POST['submit']=="Submit"){
    echo $_POST['project1'] . "<br />\n";
 }
 if(isset($_POST['submit']) && $_POST['submit']=="Export to Excel"){
    //put your excel export script here
 }
?>

HTML

<input type="submit" name="submit" value="Submit" /> 
<input type="submit" name="submit" value="Export to Excel" />

【讨论】:

  • 嗨,谢谢,第一种方法效果很好!只是额外的问题:如何在第二个 if 触发其他部分的 php 代码?例如,如果我设置为
    action = "output.php" 它适用于两个按钮,但是当我使用 include('output.php');在 IF 部分 - 它导出页面的全部内容,以及我的 CSS 和其他数据...
  • 您需要向我们展示您的 php 脚本。实际上,这将是一个完全不同的问题,也许你打开一个新帖子会更好。 1)你的 PHP 脚本 2)你得到的样本数据(做一个屏幕截图或其他东西)3)你想要的结果
【解决方案2】:

我会在第二个按钮上使用 onclick 事件而不是 type="submit"。

<input name="excel" onclick="export()" value=" Export to Excel " /> <!-- Exports to Excel -->

并在您的正文标记中添加带有以下代码的javascript代码:

<script>
   function export(){
   //your code to export Excel or your call to php
   }
</script>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-24
    • 1970-01-01
    • 1970-01-01
    • 2021-12-12
    • 2013-03-31
    • 1970-01-01
    相关资源
    最近更新 更多