0

我正在创建一个网页,该网页调用位于单个 PHP 页面上的不同 PHP 函数。让我用一个例子来解释一下:page1 包含这个 jscript:

            $.post("function.php", {
    func: "fun1",
    fun_var: $('#fun1').val() });

和 page2 包含

            $.post("function.php", {
    func: "fun2",
    fun_var2: $('#fun2').val() });

和功能页面包含

            fun1()
            {
                return $result1
             }
              fun2()
            {
                return $result2
             }  

我的问题没有调用任何函数,我找不到哪里出错了,谁能给我提供这类问题的简单框架

4

3 回答 3

0

您不能从 HTTP 请求调用 PHP 函数。

您需要通过 POST 或 GET 将函数名称作为请求变量传递。在 PHP 中确保不要执行一些奇怪的函数(例如使用白名单)。

于 2013-07-16T20:48:16.810 回答
0

page.html

$.post("function.php", { func: "fun1", fun_var: $('#fun1').val() });

page.php

if (isset($_POST['func']) && $_POST['func'] === 'fun1')
{
    function fun1()
    {
        return (isset($_POST['func_var'])) ? $_POST['func_var'] : false;
    }

    fun1();
}
etc...

尝试这个!

于 2013-07-16T20:49:46.497 回答
0

这就是调用 PHP 函数的方式:

function printHello()
{
    print 'hello';
}

printHello();

就是这样,如果它在另一个文件中并且你包含它,那么你仍然会以同样的方式调用它。

如果你想根据用户与网站的交互来调用 PHP 函数,那么你需要使用 AJAX。

您的代码看起来像伪 AJAX,它实际上没有意义,这里有一个 AJAX 示例:jQuery Ajax POST example with PHP

于 2013-07-16T20:49:13.307 回答