我想通过单击 HTML 按钮来运行 PHP 函数。
我可以这样调用 PHP 脚本:
<form action="action.php" method="post">
Name: <input type="text" name="txt"/>
<input type="submit" />
</form>
但我不想调用“action.php”。我只想调用我在此页面中定义的 PHP 函数。这能做到吗?
最佳答案
我更喜欢使用的方法是混合调用面向对象的 PHP 类的 jQuery/ajax。
我有一个 jQuery 监听器/触发器,用于按下类似这样的按钮:
$('#buttonId').live('click', function() {
$.get('api.php?functionName=test&inputvar=something');
return false;
});
这将通过 ajax 调用 api.php 文件并阻止任何进一步的操作,例如表单提交。
然后在 PHP 文件中你总是可以做一些基本的事情,比如:
if ($_REQUEST['functionName'] == 'test') {
test();
}
或者如果你有大量的类和大量的动态输入,你可以做一些更有趣的事情,比如:
$functionName = $_REQUEST['functionName'];
if (method_exists($myClassInstance, $functionName))
$myClassInstance->$functionName();
有很多方法可以解决这个问题,但这些是我最喜欢的。另一种选择是为此类事件构建的 Extjs 框架,但如果您还不熟悉它并且项目不是“庞大”的,我不会关心它。
最后,如果您需要从 php 文件返回响应(例如 json 结果),那么不要使用 jQuery:$.get()
函数,而是使用函数 $.getJSON
希望对您有所帮助:)
关于php - 单击按钮运行 PHP 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5798877/