JQuery Email уже зарегистрирован - PullRequest
1 голос
/ 27 июля 2011

Может ли какое-либо тело помочь мне ... У меня возникли проблемы с проверкой электронной почты в jquery, я хочу проверить, что это письмо уже зарегистрировано или нет .. Я пытался, но мой код не работает (т.е. не отображал сообщение об ошибке)

здесь скрипт

$(document).ready(function(){   
    $("add_form").validate( {
       rules: {  
           email: {
        required: true,
        email: true,
            remote: "emails.php"
    },
 },
 messages: {
         email:   {
    remote: jQuery.format("{0} is already in use")
        }
 },
 });

и код файла emails.php здесь

 <?php
$request = trim(strtolower($_REQUEST['email']));

require 'db.inc.php';
$db = mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASSWORD) or
die ('Unable to connect. Check your connection parameters.');
mysql_select_db(MYSQL_DB, $db) or die(mysql_error($db));


$query = 'SELECT email FROM Users WHERE email="'.$request.'"';
$result = mysql_query($query, $db) or die(mysql_error());
$valid = 'true';
if (mysql_num_rows($result)>0) 
{
    $valid = '"Thats already taken."';
}
echo $valid;

?>

1 Ответ

0 голосов
/ 05 августа 2011

Согласно документации, ответ удаленной проверки является логическим значением в кодировке JSON, а не строкой в ​​кодировке JSON.

У вас есть "true" или "false", которые станут "\" true \ "" или "\" false \ "" через json_encode (), что неверно. Фактическое истинное или ложное станет «истинным» или «ложным», что является правильным.

Также может быть полезно установить тип содержимого ответа JSON:

header ('Content-type: application / json');

...