проблема с jquery и .ajax - пустой ответ - PullRequest
0 голосов
/ 30 марта 2011

Это мои настройки.

У меня есть 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 голосов
/ 30 марта 2011

Я думаю, что вы просто скучаете по паренсу.

$obj = new $use_array['object']();      
echo $obj->$use_array['method']();   
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...