我有一个名为functions.js的文件包含在页面中。我有线:
ajaxRequest.open("GET", "save.php?json=" + jsonstring + "&rand=" + rand, true);
如何通过ajaxRequest调用php方法?我也想通过php函数从类中调用它(例如save($ json,$ rand))
伪码:
ajaxRequest.callPhpFunction( function{ Class::save($json, $rand) } )
也许 XAJAX (http://www.xajax-project.org/)是解决方案吗?
答案 0 :(得分:1)
您的XHR(XML Http请求)发出HTTP请求。这是您的JavaScript和PHP通信的唯一方式(我们这里不讨论套接字)。
你需要编写后端代码以便在调用URL时执行良好的操作,并且看到你想要实现的目标,你可能想看一下大致对应于想要的REST方法你在寻找。
答案 1 :(得分:0)
您将无法从JS脚本调用PHP函数。您应该阅读有关服务器端和客户端脚本的信息。
另一方面,可以做的事情是这样的:
phpfunctions.php
$function = $_GET['func'];
$result = Class::$function($_GET['json'], $_GET['rand']);
echo json_encode($result);
filewithjs.html
$.ajax({
url: "phpfunctions.php",
data: {
json: {somedata: 1},
rand: 1,
func: "phpfunction"
},
type: 'GET',
success: function(resp) {
//Do something with the result
}
});
但请注意,这可能是一个安全漏洞。