jquery和.ajax的问题​​ - 空白响应

时间:2011-03-30 15:43:03

标签: php ajax oop jquery

这是我的设置。

我有一个html注册表单,当用户输入用户名,电子邮件等时。信息的发送方式如下:

var processFile = "../inc/ajax.inc.php"; 

$("#register").change(function(){

    var postdata =  $("#register").serialize(); 

    $.ajax({
        type: "POST", 
        url: processFile, 
        data: "action=reg_validation&" + postdata , 
        success: function(data){                        
        }

    }); 

    console.log("action=reg_validation&" + postdata);   

}); 

这打印例如:

action=reg_validation&u=user&p=123&p2=&e=&r=

我的ajax.inc.php文件:

/*
 * Create a lookup array for form actions
 */
$actions = array(
        'reg_validation' => array(
                'object' => 'Intro',
                'method' => 'check_reg_form' 
        )
    );

if ( isset($actions[$_POST['action']]) )
{
    $use_array = $actions[$_POST['action']];   
    $obj = new $use_array['object'];

    echo $obj->$use_array['method'];      
}

function __autoload($class_name)
{
    $filename = '../../sys/class/class.'
        . strtolower($class_name) . '.inc.php';
    if ( file_exists($filename) )
    {
        include_once $filename;
    }
}

此代码应该在Intro中调用名为check_reg_form的类和名为class.intro.inc.php的函数。这几乎起作用。

如果我用class.intro.inc.php开始:

echo "test 1"; 
exit(); 

我得到test 1作为回应,但这不起作用:

class Intro
{
    public function check_reg_form()
    {
           echo "test 2"; 
    }
}

不确定为什么这不起作用...当我得到test 2时,我得到一个空白的回复..

1 个答案:

答案 0 :(得分:0)

我认为你只是错过了parens。

$obj = new $use_array['object']();      
echo $obj->$use_array['method']();