ajaxを使用してライブメールの可用性チェックを試みています。入力値を取得してphpに送信し、データベースにあるかどうかを確認したいのですが、作成できません。Firebug でスクリプトをテストすると、応答がありますが、電子メールが存在するかどうかに関係なく、出力は常に同じです。それは常に私に存在しないことを示しています。
テーブルは company と呼ばれます。電子メールのテーブル フィールドは電子メールです。
データベースへの接続は正常です。常に「TAKEN」出力が得られるため、問題は私のajaxコードにあると思います。
これは私のphpコードです:
<?php
// This is a sample code in case you wish to check the username from a mysql db table
if(isset($_POST['Email']))
{
$email = $_POST['Email'];
$dbHost = 'localhost'; // usually localhost
$dbUsername = 'root';
$dbPassword = 'password';
$dbDatabase = 'php_test';
$db = mysql_connect($dbHost, $dbUsername, $dbPassword)
or die ("Unable to connect to Database Server.");
mysql_select_db ($dbDatabase, $db)
or die ("Could not select database.");
$result = mysql_query("select Email from company where Email='".$email."'")
or die(mysql_error());
if(mysql_num_rows($result))
{
echo 'NOT OK';
}
else
{
echo 'OK';
}
}
?>
これはajaxコードです
$(document).ready(function() {
$("#email").blur(function(){
$.ajax({
type: "POST",
url: "unique_check.php",
data: {Email: $("#email").val()},
dataType:"json",
success: function(msg){
if(msg == "OK"){
alert("FREE")
}else{
alert("TAKEN")
}
}
});
});
});
私の間違いがどこにあるか教えてください。または、より良い方法があれば教えてください。私は ajax と php が初めてであることに注意してください。どうもありがとうございました!