2015-12-05 11 views
1

Я пытаюсь получить данные пользователя в базу данных, и данные сохраняются. Я хочу, чтобы сообщение об успешном завершении исчезло, я пробовал какой-то код, но, к сожалению, его не работает ... plzz помогите мне из этого..beg u пардон, если я ошибаюсь .. здесь Gose мой register.php кодЯ получаю сообщение об успешном завершении.

   <?php 
    require_once 'DB_Functions.php'; 
    $db = new DB_Functions(); 

    // json response array 
    $response = array("error" => false); 
    if (!empty($_POST['fname']) && !empty($_POST['lname']) && !empty($_POST['email']) && !empty($_POST['password']) && !empty($_POST['mobile'])){ 
     // receiving the post params 
     $fname = trim($_POST['fname']); 
     $lname = trim($_POST['lname']); 
     $email = trim($_POST['email']); 
     $password = $_POST['password']; 
     $mobile = trim($_POST['mobile']); 

     // validate your email address 
     if(filter_var($email, FILTER_VALIDATE_EMAIL)) { 
      // valid email address 
      if ($db->isUserExisted($email)) { 
       // user already existed 
       $response["error"] = true; 
       $response["error_msg"] = "User already existed with " . $email; 
       echo json_encode($response); 
      } else { 
       // create a new user 
       $user = $db->storeUser($fname, $lname, $email, $password, $mobile); 
       if ($user) { 
        // user stored successfully 
        $response["error"] = false; 
        $response["uid"] = $user["id"]; 
        $response["user"]["fname"] = $user["fname"]; 
        $response["user"]["lname"] = $user["lname"]; 
        $response["user"]["email"] = $user["email"]; 
        $response["user"]["created_at"] = $user["created_at"]; 
        $response["user"]["updated_at"] = $user["updated_at"]; 
        echo json_encode($response); 
       } else { 
        // user failed to store 
        $response["error"] = true; 
        $response["error_msg"] = "Unknown error occurred in registration!"; 
        echo json_encode($response); 
       } 
      } 
     } else { 
      // invalid email address 
      $response["error"] = true; 
      $response["error_msg"] = "invalid email address"; 
      echo json_encode($response); 
     } 
    } else { 
     $response["error"] = true; 
     $response["error_msg"] = "Required parameters are missing!"; 
     echo json_encode($response); 
    } 
?> 

и здесь Gose в .html файл с JQuery ..

   <html> 
    <head> 
<title>jQuery Test</title> 
<script type="text/javascript" src="http://code.jquery.com/jquery-1.9.1.js"></script> 
    <script type="text/javascript" src = "register.js"></script> 
</head> 

<body> 

    <!--html body--> 
    <form name = "register" id = "register" method = "POST"> 
     <label>First name:</label> 
     <input type = text name = "fname" id = "fname" required> 
     <label>Last name:</label> 
     <input type = "text" name = "lname" id = "lname" required> 
     <label>E-mail:</label> 
     <input type = "email" name = "email" id = "email" required> 
     <label>Password</label> 
     <input type = "password" name = "password" id = "password" required> 
     <label>Mobile no:</label> 
     <input type = "number" name = "mobile" id = "mobile" required> 
     <input type="submit" value="Insert" name="submit" id = "submit"> 
    </form> 
    <div id = "result" align = "right"></div> 
</body> 
</html> 

здесь Gose мне/.js/файл

 $(document).ready(function(){ 

    $("#submit").click(function(e){ 

     e.preventDefault(); 

     $.ajax({ 
      url: "register.php", 
      type: "POST", 
      data: { 
       fname: $("#fname").val(), 
       lname: $("#lname").val(), 
       email: $("#email").val(), 
       password: $("#password").val(), 
       mobile: $("#mobile").val() 
      }, 
      dataType: "JSON", 
      success: function (json) { 
       $("#result").html(json.user.email); // like that you can display anything inside #result div 
       $("#result").fadeOut(1500); 

      }, 
      error: function(jqXHR, textStatus, errorThrown){ 
       alert(errorThrown); 
      } 
     }); 
    }); 

}); 
+3

почему у вас есть 'HREF = "#"' в качестве вклада? –

+0

сэр .. !! Я удалил его, но он не повлиял на мой результат. !! :( –

+0

проверить ошибки на PHP/SQL и проверить свою консоль. –

ответ

0

Там нет необходимости использовать JSON.stringify(jsonStr) потому что JQuery имеет уже проанализирован объект ответа для вас. jQuery будет смотреть на ответ Content-Type и, если это application/json, он проанализирует его и предоставит результат анализа вашему обработчику.

Ваш JQuery должен быть таким:

$(document).ready(function(){ 

    $("#submit").click(function(e){ 

     e.preventDefault(); 

     $.ajax({ 
      url: "register.php", 
      type: "POST", 
      data: { 
       fname: $("#fname").val(), 
       lname: $("#lname").val(), 
       email: $("#email").val(), 
       password: $("#password").val(), 
       mobile: $("#mobile").val() 
      }, 
      dataType: "JSON", 
      success: function (json){ 
       if(json.error){ 
        $("#result").html(json.error_msg); // display error message 
       }else{ 
        $("#result").html(json.user.email); // like that you can display anything inside #result div 
       } 
       $("#result").fadeOut(1500); 
      }, 
      error: function(jqXHR, textStatus, errorThrown){ 
       alert(errorThrown); 
      } 
     }); 
    }); 

}); 
+0

тонны благодарности sir ,,, многому научиться сэр .. !! снова спасибо –

+1

@krishna Добро пожаловать. Счастливое кодирование. :) –

+0

сэр .. !! кажется, что даже пустые feilds взяты в базу данных .. я использовал || ....! == "), но, похоже, не работает –

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