gpt4 book ai didi

javascript - Fat-Free Framework 和 Abide AJAX 表单提交不起作用

转载 作者:行者123 更新时间:2023-11-28 18:31:05 24 4
gpt4 key购买 nike

我正在使用 Foundation 5.5.3 和 Abide 表单验证进行网站注册。所以我的 JavaScript 看起来像这样:

$('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);
}
});
});

我在这里跳过添加 HTML,因为我可以从 console.log 中看到 data 对象中显示的数据。我尝试禁用 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() {

}
}

PHPConsole 中 $email$usernamepassword 的调试输出始终为 null。我错过了什么?

最佳答案

你做错了

$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 将 Get 数据存储在 $f3->get('GET'); 中,将 post 数据存储在 $f3->get('POST.email'); 中等等

关于javascript - Fat-Free Framework 和 Abide AJAX 表单提交不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37995393/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com