从JQuery / Ajax调用PHP函数

时间:2012-06-20 13:38:57

标签: javascript jquery ajax

通过线程阅读我可以使用Ajax / JQuery调用PHP函数,但我无法理解细节。

假设我有一个函数foo(),只是将'bar'添加到我传入的字符串中.foo()存在于foo.php中。要在我的无JavaScript的HTML中使用它,我会做这样的事情:

<?php include 'foo.php';?>
<?php echo foo('bar')?>

...我的输出是“foobar”。大。

我怀疑我这样做是为了通过JavaScript获取foo()的输出:

<script>
$.post("http://foo.com/foo.php", {

  <Magic happens here> 

}, function(response) {
useTheOutput(response);
});
</script>

....但我不清楚我是应该POST还是GET ...以及如何传递一个值,比如'bar'。

有人能把我推向正确的方向吗?以下是讨论相同事情的其他线程,我无法连接所有点:

Call php function from javascript

call function in jquery-ajax

1 个答案:

答案 0 :(得分:1)

解决方案:

PHP(foo.php):

<?php

function generateTicket()

{
   //get_trusted_ticket_direct is another function that does heavy lifting...
   $ticket= get_trusted_ticket_direct($_POST['server'], $_POST['user'], $_POST['targetsite']);
   echo $ticket;
}


if ($_POST['toDo'] == 'generateTicket') {

    generateTicket();
}

?>

JavaScript的:

$(document).ready(function() {
    // Handler for .ready() called.


    $.post('http://foo.com/foo.php', {
        toDo: 'generateTicket',
        server: 'serverName',
        user: 'userName',
        targetsite: ''        
    }, function(response) {
         alert(response);

    });
});​