2016-06-23 12 views
0

私は、サイトの登録にFoundation 5.5.3とAbideフォームの検証を使用しています。だから私のJavascriptが次のようになります。ファットフリーフレームワーク&AJAXフォームの提出が正しく機能しない

$('form#register').on('valid.fndtn.abide', function() { 
    var data = { 
     'email'  : $('#email').val(), 
     'username' : $('#username').val(), 
     'password' : $('#password').val() 
     }; 

    $.ajax({ 
    method: 'POST', 
    url: 'user', 
    data: $('#email, #username, #password').serialize(), 
    beforeSend: function() { 
     console.log(data); 
    } 
    }); 
}); 

私はデータがdataオブジェクトであっ示すことconsole.logから見ることができるので、私はここにHTMLを追加スキップしています。 asyncを無効にして、headers: {'Content-Type': 'application/x-www-form-urlencoded'}を追加しようとしましたが、どちらも機能しませんでした。

は、次にF3で、私は次のようしている:

$f3->map('/user', 'User'); 

class User { 
    private $email; 
    private $username; 
    private $password; 

    function get() { } 

    function post($f3) { 
    global $handler; // This is a PHPConsole handler instance for debugging 

    $email = $f3->get('PARAMS.email'); 
    $username = $f3->get('PARAMS.username'); 
    $password = $f3->get('PARAMS.password'); 

    $handler->debug($email, 'email:'); 
    $handler->debug($username, 'username:'); 
    $handler->debug($password, 'password:'); 
    } 

    function put() { 

    } 

    function delete() { 

    } 
} 

$email$username、およびpasswordのデバッグ出力は常にPHPConsoleからnullです。私は何が欠けていますか?

答えて

3

あなたは間違って

$email = $f3->get('PARAMS.email'); 
$username = $f3->get('PARAMS.username'); 
$password = $f3->get('PARAMS.password'); 

$email = $f3->get('POST.email'); 
$username = $f3->get('POST.username'); 
$password = $f3->get('POST.password'); 

F3店であるべきことをやっているが、$f3->get('GET');$f3->get('POST.email'); など

+1

正しいでポストデータをデータを入手します!答えをありがとう! – ArtlyticalMedia

関連する問題