2015-01-21 5 views
-3

Я хочу проверить user_id и номер мобильного телефона с сервера (php). когда я ввожу неправильный user_id и номер мобильного телефона, поэтому каждый раз, когда ajax выполняет часть успеха (если), а не часть.Ajax вызов всегда запускает функцию успеха

мой Аякса является

  <script> 
      $(document).ready(function() { 
      $("#b").click(function(){ 
      var user_id=$('#user_id').val(); 
      var mobile=$("#mobile").val(); 
        $.ajax({ 
          type:"POST", 
          url:"http://localhost/test.php", 
          data:{user_id:user_id, mobile:mobile}, 
           success:function(response){ 
           if(response="valid"){ 
            alert(response); 
            window.location='https://www.google.co.in'; 
           } 
           else{ 
            alert("invalid"); 
           }      

           }, 
           error:function(response){ 
           alert("error"); 
           } 
          });  

       }); 
       }); 

</script> 

мой PHP код

<?php 
    $user_id=$_POST['user_id']; 
    $mobile=$_POST['mobile']; 
    [email protected]_connect("localhost","root","")or die('connection failed: ' . mysql_error()); 
    $db=mysql_select_db("sorethroat"); 
    $result = mysql_query("SELECT * FROM `myfieldmembers` where `employee_id`='".$user_id."' && `mobile`='".$mobile."'"); 
    if($result === FALSE) { 
     die(mysql_error()); // TODO: better error handling 
    } 
    if(mysql_num_rows ($result)>0) { 
     echo "valid"; 
    } else { 
     echo"invalid"; 
    } 

?> 

на стороне сервера после жесткого кода это PHP работает нормально изменения

+1

это задание 'если (ответ =«действительный»)' это должно быть сравнение 'если (ответ = = "valid") ' – Ghost

+0

Это чисто показывает отсутствие усилий, прежде чем публиковать это, глядя на эту строку кода, если (response =" valid ") { –

+0

теперь выполняются все части каждый раз :( –

ответ

1

response="valid" в response=="valid"

+0

после коррекции как ответ ==" valid " теперь еще часть выполняет каждое время входа в систему, где я ошибаюсь :(? –

+0

Вы ввели правильное имя пользователя и пароль? – onegun

+0

yep да, я ввел правильное имя пользователя и пароль, а также неправильно в обоих условиях, ecute else part like invalid –

0

Вы решили это, заменив valid/invalid на 1/0, так что он работает сейчас.

Для людей, которые работают в одной и той же проблемы, и не в состоянии заменить 0/1:

Проверить длину response. Иногда места добавляются, в этом случае ваш при проверке значений на экране будет выглядеть так, как будто вы сравниваете «фразу» == «фраза», но ваш код будет сравнивать «фраза» == «фраза» (обратите внимание на пробел), что не такой же.

После того, как приходилось иметь дело с этой проблемой сам, я использую это по умолчанию

response = response.trim(); 
+0

да, вы правы, я сделал это для замены 1/0. он работает: D –

Смежные вопросы