私はjqueryを初めて使用し、電子メール入力に検証ルールを追加しようとしています。メールがデータベースにあるかどうかをチェックします。検証ルールを追加しようとしているHTML入力。
<input id="email" name="email" type="text" class="easyui-validatebox" validType="email" required="true" >
MY JS
$("#regform").validate();//block below was nested in validate in OP
$('input[name="email"]').rules("add",
{
remote :
{
url: 'checkMaila.php',
async: false,
type: "POST",
data:
{
email: function()
{
return $('input[name="email"]').val()
}
}
}
});
私のPHP
<?php
/*メールがすでに登録されているかどうかを確認します*/
//mysqliを使用してdbに接続します
include 'conn.php';
if(isset($_POST['email']))
{
//op had this line instead of the line below:$maila= $_POST['email']
$maila = $mysqli->real_escape_string($_POST['email']);
//op line changed to one below $result = mysql_query("select * from user where email= '"+$maila+"';");
$sql = "SELECT * FROM user WHERE email = '".$maila."'";
$result = $mysqli->query($sql);
if($result->num_rows == 0){
echo "true";
}
else
{
echo "false";
}
}
else
{
echo "false"; //invalid post var
}
?>
詳細:私のインライン検証ルールは正常に機能します。私のjsコードは、jqueryを使用する他のjs関数を含む外部jsファイルにあり、それらは機能します。