1

コード:

query = "http://localhost:8080/working_login.php?name=" + name + "&password=" + pass;
console.log(query);

   $.ajax({
    type: "GET",
    url: query,
 dataType: "script",
 success: function(data){
            console.log(data);
            console.log("success");
        },
error:function (msg) {
            console.log("error on page");
        }           
    });

データが未定義になり、phpで作成されたサーバー側から「valid_user」を返すとエラーが発生します。

Uncaught ReferenceError: valid_user is not defined
 (anonymous function)

PHPサーバー側のコード:

$sql = "SELECT id FROM users WHERE name ='$name' AND password = '$password';"; 
$result = mysql_query($sql) or die('Can not Register user' . $sql );
$rows = mysql_num_rows($result);
if($rows > 0)
{ 
echo("valid_user");
exit();
}
else
{exit("not valid user");} 
4

2 に答える 2

1

jquery ajax reqeustでスクリプトdataTypeを使用すると、返される結果はjavascriptコードとして解釈されますが、プレーンテキストが返されます

に変更dataType: "script"するだけdataType: "text"です。

于 2012-11-24T19:09:28.087 に答える
0

おそらく、代わりにスクリプトを期待していることをjQueryに伝えるつもりはありませんでした。返されるのは適切にフォーマットされたスクリプトではないため、ブラウザがスクリプトとして解析するときにエラーが発生します。

次のようにすることができます。

$.get("http://localhost:8080/working_login.php?name=" + name + "&password=" + pass, function(data) {
    if(data == 'success')
    {
        alert("Success");
    }
    else
    {
        alert("Failed");
    }
});
于 2012-11-24T19:10:35.963 に答える