【问题标题】:Getting the condition of if isset submit button using PHP使用PHP获取if isset提交按钮的条件
【发布时间】:2017-12-01 09:21:16
【问题描述】:

我有一个 html 代码和 php 代码,当我点击提交按钮时将执行一个程序。我正在尝试在“提交”按钮被禁用时执行我的代码。该按钮已禁用,但它没有执行我的 php 代码。禁用按钮时是否存在 if(isset) 条件?你能给我一些建议吗?

这是我的 html 代码:

  <form method ="POST">

  <input type="submit" name="submit" value="GENERATE report" onclick="this.disabled=true;"> <br /> 

这是我的 php 代码

<?php


     if (isset($_POST['submit'])) {

       echo '<script language="javascript">';
                    echo 'alert("disabled")';
                    echo '</script>';

     }

?>

【问题讨论】:

  • 为什么使用ob_start()却得不到缓冲区内容?
  • 抱歉,编辑的时候不小心复制了……老实说,它的代码真的很长……但是,我只是首先关注用户的按钮控件
  • 提交表单后需要禁用按钮
  • 我认为您应该为表单onsubmit 分配一个事件处理程序来禁用按钮,因为一旦您禁用按钮(如您所愿),按钮的默认操作将被取消。

标签: php html submit isset


【解决方案1】:

我建议你通过链接https://www.w3schools.com/jsref/prop_submit_disabled.asp

提交按钮只有在未被禁用时才有效。

您指定的 onclick 功能会禁用您的提交按钮,因为它仅在执行 onclick 后提交,所以在 onclick 后按钮不再有效,因此不会提交表单。

因此,请求不会被发送到服务器,您编写的 PHP 代码也不会被执行。

无论您的意图是什么,我建议您在 onclick 上调用一个函数,并在该函数中禁用提交按钮,然后提醒该按钮已禁用。你目前的方法行不通。

【讨论】:

    【解决方案2】:

    您需要在提交表单后禁用该按钮。

    或使用条件禁用按钮。

    <input type="submit" name="submit" value="GENERATE report" <?php if(isset($_POST['submit'])) echo 'disabled="disabled"'; ?> > <br /> 
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-23
    • 1970-01-01
    • 2019-03-10
    • 2017-04-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多