如何使用按钮在同一文件中调用不同的PHP函数

8ehkhllq  于 2022-12-02  发布在  PHP
关注(0)|答案(1)|浏览(98)

我有一个单独的PHP文件与一些功能..我需要调用每一个当我点击一个按钮..
下面是我的testme.php

<?php
    
//when button1 clicks
    sleep(5)
    echo 'Hi, you have clicked button 1'
    
//when button2 clicks
    sleep(8)
    echo 'Hi, you have clicked button 2'

    
    ?>

从这个链接中,我找到了一些示例,https:www.jqueryscript.net/demo/Sliding-Confirm-Dialog-Plugin-with-jQuery-Bootstrap-Confirm/,并实现了一些确认对话框,如下所示:

<form method="POST">
<div class="mb-3">
   <button  type='button'  id ="btnnew2" class="btn btn-info">Get Latest Graph</button>
    <p></p>
</div>
</form>

脚本如下图、

$("#btn1").confirm({
  
  title: "Confirmation",
  text: "Are you sure?",
  confirm: function(button) {        
    console.log('AJAX request in progress...');
    $('#loading').show();
    $.ajax({
      type: 'POST',
      url: 'testme.php',
      success: function(data) {
        $("p").text(data);
      },
      complete: function() {      
        $('#loading').hide();
      }
    });
    
  },
  cancel: function(button) {
    console.log("You aborted the operation.");
  },
  confirmButton: "Yes I Need",
  cancelButton: "No"
});

当我有许多按钮时,我应该如何使用相同的方法?

<form method="POST">
    <div class="mb-3">
       <button  type='button'  id ="btn1" class="btn btn-info">Get Latest Graph</button>
        <p></p>
    </div>

    <div class="mb-3">
       <button  type='button'  id ="btn2" class="btn btn-info">Get Latest Graph</button>
        <p></p>
    </div>
    </form>

注:答案可以在这里找到如何通过点击不同的按钮在同一脚本中执行不同的功能,但我希望这与上述方法,因为较少的编码。
更新:
看起来要求不清楚。很抱歉。让我从头开始。我有一个按钮,当用户确认testme.php正在运行时,单击按钮会弹出确认窗口。下面是testme.php包含的内容。

<?php       
    //when button1 clicks
        sleep(5)
        echo 'Hi, you have clicked button 1'
        
  ?>

按钮如下,

<form method="POST">
    <div class="mb-3">
       <button  type='button'  id ="btn1" class="btn btn-info">Get Latest Graph</button>
        <p></p>
    </div>
    </form>

并且jQuery函数如下所示,

$("#btn1").confirm({
      
      title: "Confirmation",
      text: "Are you sure?",
      confirm: function(button) {        
        console.log('AJAX request in progress...');
        $('#loading').show();
        $.ajax({
          type: 'POST',
          url: 'testme.php',
          success: function(data) {
            $("p").text(data);
          },
          complete: function() {      
            $('#loading').hide();
          }
        });
        
      },
      cancel: function(button) {
        console.log("You aborted the operation.");
      },
      confirmButton: "Yes I Need",
      cancelButton: "No"
    });

现在的要求是,如果我有一组按钮,比如说button 1,button 2;我应该如何改变我的testme.php文件运行根据按钮点击..

<?php
        
    //when button1 clicks
        sleep(5)
        echo 'Hi, you have clicked button 1'
        
    //when button2 clicks
        sleep(8)
        echo 'Hi, you have clicked button 2'
    
        
        ?>

最后一个帖子的答案没有使用我在这里使用的方法,它有太多的编码。
以下是我的插件

<script>src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<script src="https://www.jqueryscript.net/demo/Sliding-Confirm-Dialog-Plugin-with-jQuery-Bootstrap-Confirm/jquery.confirm.js"></script>
<script src="https://netdna.bootstrapcdn.com/bootstrap/3.3.1/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="https://netdna.bootstrapcdn.com/bootstrap/3.3.1/css/bootstrap.min.css">
ru9i0ody

ru9i0ody1#

在你的流程中有很多问题。首先调用btn类上 AJAX 而不是btn id。现在你必须使用ajax将被点击按钮的id传递给php。

type: 'POST',
url: 'testme.php',
data :{id : $(this).attr(id) }

它将把被点击按钮的id传递给testme.php
现在在testme.php中

id = $_POST['id']

添加逻辑以根据使用ifelse获得id使用函数。

相关问题