我需要一些帮助才能让 JQuery AJAX 在我的一个 PHP 课程中使用一种方法。 我使用 PHP 类验证了表格, 并扩展了一个数据库类 。 我只是需要 AJAX 来工作, 我很好。 您如何让 AJAX 和 OO PHP 一起工作? 过去几天我一直坚持着这个任务, 并且一直在互联网上研究, 没有找到任何有用的方法 。 有人能张贴一个让 JQuery s AJAX 函数使用 PHP 方法的简单例子吗?
这是 PHP 返回用户是否通过验证的方法( 连接. glass. php 扩展数据库. glass. php ) :
public function isValidData() {
if ($this -> firstName() && $this -> lastName() && $this -> email() && $this -> subject() && $this -> message()) {
return true;
} else {
return false;
}
}
这是杰奎里号 阿贾克斯号在下面
//Submit function called when the user clicks the submit button
$( #contact_form ).submit(function(e) {
//Prevent submission until the user passes validation
e.preventDefault();
//If all the functions return true, then send form to the AJAX function
if(validFirstName() && validLastName() && validEmail() && validSubject() && validMessage()) {
//Serialize the data in the form for the AJAX Request
var formData = $( #contact_form ).serialize();
//submitForm(formData);
//Displays success message, clears contact form and hides the lightbox
$( #contact_form ).fadeOut(1000, function() {
$( .success ).html( Form submission successful. + <br/> + Thank you + $( input.first ).val() + "!").fadeIn(4000, function() {
//Clears contact form
$( .first ).val( );
$( .last ).val( );
$( .email ).val( );
$( .subject ).val( );
$( .message ).val( );
//Hides success message
$( .success ).hide();
//Hides lightbox
$( .mask, .main_contact ).css( display , none );
});
});
return true;
} else {
return false;
}
});
//Validates the user s first name
function validFirstName() {
var firstName = $( .first ).val();
if(firstName.length <= 2 || firstName == ) {
$( .error ).show().html( 3 Characters required!<br/> );
$( .first ).css( box-shadow , 0 0 10px #B40404 );
return false;
} else {
$( .first ).css( box-shadow , 0 0 4px #000 );
$( .error ).hide();
return true;
}
}
//Validates the user s last name
function validLastName() {
var lastName = $( input.last ).val();
if(lastName.length <= 2 || lastName == ) {
$( .error ).show().html( 3 Characters required!<br/> );
$( input.last ).css( box-shadow , 0 0 10px #B40404 );
return false;
} else {
$( input.last ).css( box-shadow , 0 0 4px #000 );
$( .error ).hide();
return true;
}
}
//Validates the user s email
function validEmail() {
var email = $( .email ).val();
if(!email.match(/^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$/)) {
$( .error ).show().html( Invalid email address!<br/> );
$( .email ).css( box-shadow , 0 0 10px #B40404 );
return false;
} else {
$( .email ).css( box-shadow , 0 0 4px #000 );
$( .error ).hide();
return true;
}
}
//Validate the subject input in the contact form
function validSubject() {
var subject = $( .subject ).val();
if(subject.length <= 2 || subject == ) {
$( .error ).show().html( 3 Characters required!<br/> );
$( .subject ).css( box-shadow , 0 0 10px #B40404 );
return false;
} else {
$( .subject ).css( box-shadow , 0 0 4px #000 );
$( .error ).hide();
return true;
}
}
//Validate the message input
function validMessage() {
var message = $( .message ).val();
if(message.length <= 2 || message == ) {
$( .error ).show().html( 3 Characters required!<br/> );
$( .message ).css( box-shadow , 0 0 10px #B40404 );
return false;
} else {
$( .message ).css( box-shadow , 0 0 4px #000 );
$( .error ).hide();
return true;
}
}
});
/Ajax请求
函数提交 Form( formData) {
$.ajax({
type : "POST",
url : "includes/function.php",
data : formData,
dataType: json ,
cache : false,
success : function(formData) {
if(formData.success) {
alert(formData.msg);
} else {
alert("Error");
}
console.log(formData);
}
});
Jquery 似乎也禁用了我的 PHP 服务器侧边验证 。 当 JQuery 禁用时, 服务器侧边验证效果很好 。 知道为什么 JQuery 会禁用服务器验证吗? 我对编程有点新手, 我非常感谢任何帮助, 谢谢 。