单击<button type =“submit”>时调用PHP函数

时间:2017-07-19 10:15:46

标签: javascript php jquery

我在我的按钮上插入了一个onclick,但是我不知道我在哪里出错了,但似乎每次加载页面时都会触发该函数。

如何在点击按钮本身时调用功能

<button type="submit" class="btn btn-primary" onclick="<? $query = DB::update('ads')->set(array('sale_agreed' => '999'))->where('id_ad', '=', $msg_thread->ad->id_ad)->execute(); ?>"><?=_e('ACCEPT This Offer')?></button>  

对此有何看法?谢谢; - )

4 个答案:

答案 0 :(得分:0)

您不能在客户端使用php函数。属性“onclick”会触发javascript函数,而不是php函数。 为了使用onclick执行php函数,您必须向服务器发出Ajax请求。

$('.button').click(function() {
    $.ajax({
      method: "POST",
      url: "some.php",
      data: { name: "John", location: "Boston" }
   })
    .success(function( msg ) {
         alert( "Data Saved: " + msg );
      });
});

在“url”变量中,您必须将url放入php脚本,数据对象包含要发送到脚本的所有PHP $ _REQUEST参数。脚本完成后,将执行success函数。

答案 1 :(得分:0)

按钮点击是客户端,而PHP是服务器端,但您可以使用AJAX

来实现此目的
$('.button').click(function() {

 $.ajax({
  type: "POST",
  url: "some.php",
  data: { name: "John" }
}).done(function( msg ) {
  alert( "Data Saved: " + msg );
});    

    });

在您的php文件中:

    <?php
function abc($name){
//your code here
}
 ?>

答案 2 :(得分:0)

您可以使用jQuery Ajax来执行此操作。 添加一个带有一些id的按钮。

<button id="click-button"></button>

在脚本标记内。

$(document).read(function(){
    $("#click-button").click(function(){
        $.ajax({
        url: "remote-file.php",
        method:"POST",
        data:"token=buttonclick",
        success: function(result){
            if(result != "fail"){
                //Perform actions with the results...
            }
        }});
    });
});

在PHP PHP remote-file.php

<?php
if(isSet($_POST['token']) && $_POST['token'] == 'buttonclick'){
    $result = myFunction();
    echo $result;
}else{
    echo "fail";
}

function myFunction(){
    // Perform your DB actions...
    return true; //Return your data
}
?>

答案 3 :(得分:-2)

您无法将php功能添加到客户端按钮点击。

您应该让PHP检查页面是否已提交,然后运行您的功能