gpt4 book ai didi

php - 提交和接收ajax表单

转载 作者:行者123 更新时间:2023-11-28 20:45:20 25 4
gpt4 key购买 nike

我有一个php脚本,仅供学习之用。我想在我的网络应用程序上使用 ajax 表单。没做过,这是测试php脚本。所以我想通过ajax表单发送名称和密码,在php脚本中将检查其是否正确,并将返回成功(当登录和密码正确时)或错误(当不匹配时)。我的问题是如何在 js 或 jQuery 中正确发送和接收它。任何人都可以帮助我提供更好的想法和/或更好的安全功能吗?

我在 stackoverflow 上找到并尝试了这个脚本:

    //bind an event handler to the submit event for your login form
$('#login_form').live('submit', function (e) {

//cache the form element for use in this function
var $this = $(this);

//prevent the default submission of the form
e.preventDefault();

//run an AJAX post request to your server-side script, $this.serialize() is the data from your form being added to the request
$.post($this.attr('action'), $this.serialize(), function (responseData) {

//in here you can analyze the output from your server-side script (responseData) and validate the user's login without leaving the page
});
});

我想知道在 php 脚本中它是否可以像这样工作?:

<?php
$username = $_GET["name"];
$password = $_GET["password"];

if($username="*****" && $password==********)
{
header('Location:http://*****************/jaz/imes/index.html?login="success"');
}else{
header('Location:http://*****************/jaz/imes/index.html?login="error"');
}
?>

正如我所说,这只是一个测试脚本,只是为了了解更多信息。

最佳答案

首先,如果您使用的是 jQuery 1.8+,请尝试使用 on() 方法另一件事是,您应该在 PHP 脚本中为该用户设置 session ,然后使用 js 重定向用户:

jQuery:

$('#login_form').on('submit', function(){
$.post($this.attr('action'), $this.serialize(), function (responseData) {
if(responseData == 'success'){
window.location = "userpanel.php"
}else{
alert('NO MATCHES');
}
});
});

PHP:

<?php
$username = $_POST['username'];
$password = $_POST['password'];

// VALIDATING HERE, in db maybe?
if($username == 'blah' && $password == 'blah'){
$_SESSION['username'] = $username;
echo "success";
}else{
echo "failed";
}

?>

在您的 HTML 表单中,您需要有 2 个输入,其 ID 为“用户名”和“密码”,以便上述代码可以运行。

关于php - 提交和接收ajax表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13569038/

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