使用一个不同的php页面进行删除/插入/更新我所制作的每个模块将使我的php页面对我调用的每个ajax都太多了。喜欢
$.post("../lib/ajax/edit-user-save.php",{username:username,email:email,id:id},function(data){}
我使用edit-user-save.php编辑模块。现在删除我像delete-user.php。不能在发帖子/获取ajax请求时使用函数来调用而不是重定向到php页面吗?
非常感谢您的建议。谢谢:D
如果它似乎是愚蠢的问题那么非常抱歉:3
答案 0 :(得分:2)
没有。 HTTP请求只能发送到URL。
如果要运行某个函数,那么该URL必须由服务器端程序处理,并且该程序必须调用您要运行的函数。您可以根据(例如)查询字符串参数有条件地执行此操作。
答案 1 :(得分:2)
只需传递一个参数来说明您尝试使用的操作,然后在服务器端检查该参数并调用相应的函数。像这样:
客户方:
$.post("../lib/ajax/user.php", {
username: username,
email: email,
id: id,
action: 'edit'
}, function(data){});
服务器端:
switch($_POST['action']) {
case 'edit':
die(edit());
case 'delete':
die(delete());
}
或者你可以在服务器端看到并且这样做:
if (function_exists($_REQUEST['action'])) {
die($_REQUEST['action']());
}
这将检查服务器端页面上是否存在该功能,如果存在,则会调用它。 警告:这将允许用户调用该脚本中提供的任何PHP函数,因此如果有任何函数它们无法调用,您必须将它们列入白名单将那些他们不能的人打电话或列入黑名单。
一旦函数调用返回,die()
调用将停止脚本执行,从而阻止脚本继续并重新生成HTML。
答案 2 :(得分:0)