首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在单击按钮时调用PHP函数

如何在单击按钮时调用PHP函数
EN

Stack Overflow用户
提问于 2013-12-23 14:47:19
回答 10查看 1.2M关注 0票数 176

我创建了一个名为functioncalling.php的页面,其中包含两个按钮: Submit和Insert。

我想测试当一个按钮被点击时,哪个函数会被执行。我希望输出出现在同一页上。因此,我创建了两个函数,每个按钮一个。

代码语言:javascript
运行
复制
<form action="functioncalling.php">
    <input type="text" name="txt" />
    <input type="submit" name="insert" value="insert" onclick="insert()" />
    <input type="submit" name="select" value="select" onclick="select()" />
</form>

<?php
    function select(){
        echo "The select function is called.";
    }
    function insert(){
        echo "The insert function is called.";
    }
?>

这里的问题是,在单击任何按钮后,我都得不到任何输出。

我到底哪里错了?

EN

回答 10

Stack Overflow用户

发布于 2013-12-23 14:55:23

你不能调用PHP函数,比如点击HTML中的按钮。因为HTML在客户端,而PHP运行在服务器端。

您要么需要使用一些Ajax,要么像下面的代码片段中那样做。

代码语言:javascript
运行
复制
<?php
    if ($_GET) {
        if (isset($_GET['insert'])) {
            insert();
        } elseif (isset($_GET['select'])) {
            select();
        }
    }

    function select()
    {
       echo "The select function is called.";
    }

    function insert()
    {
       echo "The insert function is called.";
    }
?>

您必须发布表单数据,然后检查是否单击了适当的按钮。

票数 19
EN

Stack Overflow用户

发布于 2015-08-22 01:52:19

要在输入中显示$message:

代码语言:javascript
运行
复制
<?php
    if(isset($_POST['insert'])){
        $message= "The insert function is called.";
    }
    if(isset($_POST['select'])){
        $message="The select function is called.";
    }
?>


<form  method="post">
    <input type="text" name="txt" value="<?php if(isset($message)){ echo $message;}?>" >
    <input type="submit" name="insert" value="insert">
    <input type="submit" name="select" value="select" >
</form>

要将functioncalling.php用作外部文件,必须以某种方式将其包含在文档中。

票数 14
EN

Stack Overflow用户

发布于 2014-03-30 04:29:00

试试这个:

代码语言:javascript
运行
复制
if($_POST['select'] and $_SERVER['REQUEST_METHOD'] == "POST"){
    select();
}
if($_POST['insert'] and $_SERVER['REQUEST_METHOD'] == "POST"){
    insert();
}
票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20738329

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档