我目前正在开发一款应用程序,我陷入了一个非常基本的问题:HTTP帖子。我需要将用户名传递给服务器以检查它是否已经存在,但是当我点击触发下面功能的按钮时,没有任何反应。
服务器例程很好,在浏览器中测试它。但我在这里做错了吗?
JavaScript的:
$.post("http://192.168.0.5/StadtLandFluss/userManagement.php", {
action : "checkusername",
username: loginName },
function(data) {
jSuccess();
},'json');
PHP:
else if($action == 'checkusername'){
$sql = "SELECT * FROM account WHERE username = '$username'";
$adressen_query = mysql_query($sql) or die(mysql_error());
if(mysql_num_rows($adressen_query) > 0){
echo 'T';
}else{
echo 'F';
}
}
答案 0 :(得分:1)
它在API中说最后一个参数dataType是服务器所期望的数据类型。它不是json
而是text
。如果JavaScript将“T”或“F”解析为json,则会引发意外的字符错误。
尝试将其更改为:
$.post("http://192.168.0.5/StadtLandFluss/userManagement.php", {
action : "checkusername",
username: loginName },
function(data) {
jSuccess();
},'text');
答案 1 :(得分:-1)
jSuccess()
应该做什么?
另外,如果我正确查看您的代码,您甚至不会检查userManagement.php
给出的结果。因此,data
中的function(data)
未被使用。
所以你应该有类似的东西:
jSuccess(data);
或者,因为我不知道那个功能是做什么的。
if(data == "T") {
alert("Login name already exists");
}
else if(data == "F") {
alert("Login name is available.");
}