2012-02-09 107 views
0

我知道这个问题可能被要求100万次,但为1.000.001时间:)如何使用ajax从javascript调用php函数?

我需要从JavaScript调用一个PHP函数。如果ajax能够做到这一点,我有点争论。

我不想发送任何数据只是一个Ajax调用,将调用和运行功能。

这里是我到目前为止有:

$.post('functions/test.php', function() { 
    console.log("Hooray, it worked!"); 
}); 

是这样会运行test.php

谢谢

+5

为什么不尝试一下,并找出? – 2012-02-09 00:40:48

+1

'这是要运行test.php'是,如果路径到PHP脚本是正确的。 – Cheery 2012-02-09 00:45:21

回答

2

它绝对运行test.php的,要检查它,你可能做某事在成功

$.ajax({ 
    type: "POST", 
    url: "ajax/test.php", 
    success: function(data) { 
     alert(data); 
    } 
}); 

但是,如果没有数据发送的目的是什么?

+0

一般时未发送任何数据,然后调用的脚本不直观的东西,比如登录特定文档或类似的东西的看法。我认为这可能是习惯jQuery和PHP之间通信的第一步。 – Jasper 2012-02-09 00:59:58

1

很可能,是的。我不能保证它,因为我不做jQuery。

然而,这肯定会运行它没有任何问题(除了IE版本太旧,你不应该关心他们):

var a = new XMLHttpRequest(); 
a.open("GET","functions/test.php"); 
a.onreadystatechange = function() { 
    if(a.readyState == 4) { 
     if(a.status == 200) { 
      console.log("Hooray, it worked!"); 
      // optionally, do stuff with a.responseText here 
      // a.responseText is the content the PHP file outputs, if any 
     } 
     else alert("HTTP error "+a.status+" "+a.statusText); 
    } 
} 
a.send(); 
1

是在test.php脚本将运行,并且可以从test.php这样的脚本抢输出(如果你想):

$.post('functions/test.php', function(data) { 
    //the `data` variable now stores the server response (whatever you output in `test.php`) 
    console.log("Hooray, it worked!"); 
}); 
1

jQuery中,你可以这样做:

$.post('functions/test.php', function(data) { 
alert(data); 
}); 

无论在test.php的返回将投入变量“数据”

所以,你可以在test.php的做任何你需要的PHP函数和发送输出背部。

0

我总是用

jQuery.ajax("url.php");