gpt4 book ai didi

javascript - PHP 代码返回其脚本并且在 JQuery Ajax 中不起作用

转载 作者:可可西里 更新时间:2023-11-01 07:30:19 25 4
gpt4 key购买 nike

我想用 Aptana IDE 和 xampp 做一个网站,它有几个页面。索引页是所有未登录系统的用户访问的地方,主页是所有登录系统的用户必须访问的地方。我是开发网站的新手。

我决定使用 Ajax 登录注册页面。它实际上工作正常。但现在我不知道为什么它没有。

在我的 login.html 页面中

<form id="login-form" class="text-left" method="post">
<div class="main-login-form">
<div class="login-group">
<div class="form-group">
<label for="lg_username" class="sr-only">Username</label>
<input type="text" class="form-control" id="lg_username" name="username" placeholder="username"
data-container="body" data-toggle="popover" data-placement="left" data-content=""
value="">
</div>
<div class="form-group">
<label for="lg_password" class="sr-only">Password</label>
<input type="password" class="form-control" id="lg_password" name="password" placeholder="password"
data-container="body" data-toggle="popover" data-placement="left" data-content="">
</div>
<div class="form-group login-group-checkbox">
<input type="checkbox" id="lg_remember" name="lg_remember">
<label for="lg_remember">remember</label>
</div>
</div>
<button type="submit" class="login-button">Submit</button>
</div>
</form>

并使用 JQuery 验证表单验证

$(document).ready(function () {
$('#login-form').validate({
rules: { //rules goes here},
messages: { //messages goes here},
submitHandler: submitForm
});

它工作正常。我的所有规则都已执行。

提交功能:

function submitForm(){
var username = $('#lg_username').val();
var password = $('#lg_password').val();
var checkbox = $('#lg_remember').is(":checked");

var strAjax = "username=" + username + "&password=" + password + "&checkbox=" + checkbox;
alert(strAjax);
$.ajax({
type: 'POST',
url: 'loginAjax.php',
data: strAjax,
cache: false,
success: function(data) {
alert(data);
if(data == "1") {
window.location.href = "home.php";
}
else {
//Error messages
}
}
});
return false;
}

loginAjax.php 文件:

<?php
require_once 'dbcon.php';
session_start();

$username = mysql_real_escape_string($_POST["username"]);
$password = mysql_real_escape_string($_POST["password"]);

$sql = "SELECT * FROM tbl_user WHERE userName = '$username' AND password = '$password'";

$result = mysql_query($sql);
$count = mysql_num_rows($result);
$row = mysql_fetch_array($result);

if($count == 1){
if($_POST['checkbox'] == TRUE) {
if(!isset($_COOKIE['name'])) {
setcookie( 'name', $row['userName'], time() + (86400 * 30) );
}
}
$_SESSION['user_session'] = $row['userName'];
echo TRUE;
}
else {
echo FALSE;
}
?>

dbcon.php 文件连接到mysql 数据库。我试图控制它是输入 ajax 方法还是从带有警报的 php 文件返回的内容。 strAjax 似乎是正确的,但 alert(data) 显示我的 php 代码是这样的;

php returns this

我将登录文件更改为 php 文件而不是 html。但问题不在于此。我所有的 ajax 代码都从类似的 php 获取数据。在我的电脑中,php 文件运行正常。如果您需要更多信息,我可以编辑我的帖子。为什么这个 ajax conk?

最佳答案

var formData = {
'username' : $('input[name=username]').val(),
'password' : $('input[name=password]').val(),
'lg_remember' : $('input[name=lg_remember]').val()
};

// process the form
$.ajax({
type : 'POST', // define the type of HTTP verb we want to use (POST for our form)
url : 'process.php', // the url where we want to POST
data : formData, // our data object
dataType : 'json', // what type of data do we expect back from the server
encode : true
})

试试这个

关于javascript - PHP 代码返回其脚本并且在 JQuery Ajax 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35403005/

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