在按钮单击时运行 php 函数

Posted

技术标签:

【中文标题】在按钮单击时运行 php 函数【英文标题】:Run php function on button click 【发布时间】:2015-12-25 18:37:24 【问题描述】:

我想在单击按钮时运行 php 函数。例如:

<input type="button" name="test" id="test" value="RUN"  onclick="<?php echo testfun(); ?>" /><br/>

<?php

function testfun()

   echo "Your test function on button click is working";


?>

我的问题是,当我这样做时,我没有得到我正在寻找的预期输出。请给我最好的解决方案,以便,无论是简单的button 还是 submit

【问题讨论】:

你不能这样做,php是一种脚本语言。如果你想点击事件尝试 javascript 【参考方案1】:

您可以使用isset()

<form method="post">
    <input type="submit" name="test" id="test" value="RUN" />

</form>

<?php

function testfun()

   echo "Your test function on button click is working";


if(isset($_POST('submit')))

   testfun();


?>

【讨论】:

【参考方案2】:

没问题您可以轻松使用onClick()功能,而无需使用任何其他语言干扰,

<?php
echo '<br><Button onclick="document.getElementById(';?>'modal-wrapper2'<?php echo ').style.display=';?>'block'<?php echo '" name="comment" style="width:100px; color: white;background-color: black;border-radius: 10px; padding: 4px;">Show</button>';
?>

【讨论】:

您好,按钮显示...但我没有得到应用程序,所以问题的解决方案。如果您添加它,谢谢。【参考方案3】:
<a href="home.php?click=1" class="btn">Click me</a>
<?php 
  if($_GET['click'])
    doSomething();
  
?>

但是最好用JS和ajax来调用函数!

【讨论】:

【参考方案4】:

我尝试了威廉的代码,谢谢兄弟。

但它不是一个简单的按钮,我必须使用 method="post" 添加表单。我也必须写提交而不是按钮。

下面是我的代码..

<form method="post">
    <input type="submit" name="test" id="test" value="RUN" /><br/>
</form>

<?php

function testfun()

   echo "Your test function on button click is working";


if(array_key_exists('test',$_POST))
   testfun();


?>

【讨论】:

【参考方案5】:

您正在尝试调用 javascript 函数。如果你想调用一个 PHP 函数,你必须使用例如一个表单:

    <form action="action_page.php">
       First name:<br>
       <input type="text" name="firstname" value="Mickey">
       <br>
       Last name:<br>
       <input type="text" name="lastname" value="Mouse">
       <br><br>
       <input type="submit" value="Submit">
     </form> 

(原文来自:http://www.w3schools.com/html/html_forms.asp)

所以如果你想做一个异步调用,你可以使用“Ajax”——是的,这就是 Javascript 方式。但我认为,我的代码示例对于这次来说已经足够了 :)

【讨论】:

【参考方案6】:

这样做:

<input type="button" name="test" id="test" value="RUN" /><br/>

<?php

function testfun()

   echo "Your test function on button click is working";

if(array_key_exists('test',$_POST))
   testfun();

?>

【讨论】:

如果不被具有method ="POST" 属性的form 标签包裹,它会起作用吗?

以上是关于在按钮单击时运行 php 函数的主要内容,如果未能解决你的问题,请参考以下文章

如何在单击按钮时运行 mysql 查询

单击按钮时运行功能

使用 PHP 运行带参数的 Python 函数

如何在按钮单击 React.js 时运行警报

在按钮单击时执行 php Shortcode

在 PostBack (ASP.NET) 上运行 jQuery 函数