JQuery проверить PHP ответ - PullRequest
2 голосов
/ 11 мая 2010

Моя проблема в том, что я хочу проверить адрес электронной почты с помощью jquery. Не только синтаксис, а скорее, если письмо уже зарегистрировано. Есть несколько уроков, но они не работают! Сначала код Jquery:

<script id="demo" type="text/javascript"> 
$(document).ready(function() {
 // validate signup form on keyup and submit
 var validator = $("form#signupform").validate({
  rules: {
   Vorname: {
    required: true,
    minlength: 3
   },
   Nachname:{
    required: true,
    minlength: 4
   },
   password: {
    required: true,
    minlength: 5
   },
   password_confirm: {
    required: true,
    minlength: 5,
    equalTo: "#password"
   },
   Email: {
    required: true,
    email: true,
    type: "POST",
    remote: "remotemail.php"
   },
   dateformat: "required",
  ...
</script> 

А теперь код PHP:

<?php
    include('dbsettings.php');

    $conn = mysql_connect($dbhost,$dbuser,$dbpw); 
    mysql_select_db($dbdb,$conn);

    $auslesen1 = "SELECT Email FROM flo_user"; 
    $auslesen2 = mysql_query($auslesen1,$conn); 
    $registered_email = mysql_fetch_assoc($auslesen2);
    $requested_email  = $_POST['Email'];

    if( in_array($requested_email, $registered_email) ){
        echo "false";
    }
    else{
        echo "true";
    }
?>

Я также пытался вернуть TRUE / return FALSE, но при этом постоянно отображается сообщение «E-mail зарегистрирован» json_encode тоже не сработало.

Большое спасибо!

1 Ответ

0 голосов
/ 04 мая 2011

Из документов значение, похоже, передается как параметр get. Замените $ _POST ['Email'] на $ _GET ['Email'] и посмотрите, подходит ли вам это.

Также in_array не обрабатывает многомерные массивы, которыми является массив. Возможно, лучшим способом было бы добавить предложение WHERE в оператор SQL что-то вроде

$email = mysql_real_escape_string($_GET['Email']);
$sql = 'select Email from users where Email = '.$email;
$result = mysql_query($query, $dbconn);
$resultAsArray = mysql_fetch_assoc($result);
if(count($resultAsArray)==0) {
    echo true;
}
else {
    echo false;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...