我使用$ _SERVER [' PHP_SELF']来运行一个函数,因为它在我的插件页面中包含和调用的方式我无法直接调用functions.php文件,所以我现在要做的就是处理注册脚本,问题是我的回报不能按照我想要的方式使用。例如。
public function CheckUserName() {
$query = <<<SQL
SELECT id
FROM {$this->tprefix}accounts
WHERE username = :posteduser
SQL;
$resource = $this->db->db->prepare( $query );
$resource->execute( array (
':posteduser' => $_POST['username'],
));
if($resource->rowCount() == 0 ) {
//Self Continue to run checks
}
else {
echo "1";
}
}
是我的检查,以确保用户名已经没有被使用,而如果电子邮件已被使用,则会有两个回复。我的Ajax是
$(function() {
$("#register_").submit(function(event) {
event.preventDefault();
var username = $("#username").val();
if(username == "") { $("#unameerror").html("Username is Required"); }
$.ajax({
type: "POST",
url: $("#register_").attr("action"),
data: $("#register_").serialize(),
success: function(data) {
if(data==1) { alert("Username is taken. Please choose another!" };
if(data==2) { alert("Email already registered. Please select lost password
if you have forgotten your password" };
if(data==0) { alert("Account Created!") }; //0 is returned after all checks passed and scripts executed
},
error: function() {
alert("Something isn't right");
}
});
});
});
我的问题是,因为它从PHP_SELF开始运行所有信息(IE <html><title>reg script</title><body><form id = "reg"></form></body><html>
我能想到的最好的方法就是如何解析我的所有数据返回以简单地返回脚本代码?