【问题标题】:Send Alert to Page after POST Data from Form Sent to Database - PHP, JavaScript将表单中的 POST 数据发送到数据库后向页面发送警报 - PHP、JavaScript
【发布时间】:2012-06-25 09:06:20
【问题描述】:

我有一个表格。提交表单数据后,我想向用户发送一个 JavaScript 警报,说“感谢提交表单”。

我正在寻找某种条件来使这成为可能。我尝试使用isset 测试$_POST 数组,即使print_r 显示一个空数组,警报还是出现了。似乎不可靠。

非常感谢任何想法。

【问题讨论】:

  • 真的吗? -3。这似乎有点苛刻。
  • 我认为这些委员会的政策是实际发布反对投票的建设性理由,而不是隐藏在匿名反对票后面?弱;-(
  • 没有代码,没有努力自己解决,侮辱了我的 cmets -1。
  • 谢谢达贡。我不确定我在哪里侮辱了我。而且我没有意识到代码是必需的。而且,你怎么知道我没有付出任何努力?我经常在努力获得好主意后来到这里,我这样做是因为它有效。我很感谢你挺身而出并解释自己。这是你的意见。

标签: php javascript forms post alert


【解决方案1】:
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
   echo <<<EOL
<script type="text/javascript">
   alert('POST received');
</script>
EOL;
}

REQUEST_METHOD 是唯一 100% 可靠的测试特定类型的 HTTP 请求是否处于活动状态的方法。检查表单字段是不可靠的 - 字段名称可能会出现拼写错误、遗漏、删除、黑客攻击等...

【讨论】:

    【解决方案2】:
    <?php if ($_SERVER['REQUEST_METHOD'] == 'POST'):?>
    <script type="text/javascript">
       alert('POST received');
    </script>
    <?php endif;?>
    

    Marc B 答案的另一种写法

    【讨论】:

      【解决方案3】:

      如果您只想说感谢您提交表单,为什么不在提交按钮上添加onclick

      <input type="submit" onclick="alert('Thank you for submitting the form!');" value="Submit Form">
      

      接收数据后提交,在PHP中,

      if (isset($_POST['whatever']) && (more_conditions) {
       echo "<script type='text/javascript'>alert('Successful Submission.)</script>";
      }
      

      【讨论】:

      • 因为我已经在使用onclick 了。另外,当他们点击时,这并不意味着表单提交成功......
      • 您可以在onclick 中添加多个功能,因此将其用于其他用途不是障碍。要添加其他条件,请检查编辑。
      • 我按照我的指示尝试了您的答案的变体,结果各不相同。我会尝试一些额外的测试。
      • 我最终使用了您的想法,Hrishikesh,并将感谢警报添加到 onsubmit 处理程序,现在它可以按照我想要的方式工作 - 谢谢!
      猜你喜欢
      • 2014-01-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-18
      相关资源
      最近更新 更多