2017-02-25 130 views
0

這段代碼出了什麼問題?我在這個問題上準備了很多帖子,但無法解決我的錯誤。我有以下幾點。使用Ajax顯示PHP成功和失敗消息

HTML代碼

<div id="successMessage" style="display:none;"> It worked </div> 
    <div id="failMessage" style="display:none;"> It failed </div> 

    <div container> 
      <div class="modal"> 
      <form> 
      .... 
      </form> 
      </div> 
    </div> 

PHP代碼

if(!$stmnt->execute()){ 
      echo "Failed!"; 

     }else{ 
      echo "Inserted"; 
     } 

Ajax代碼

success: function(data){ 
    viewData(); 
    if (data=="Failed!") { 
     console.log(data); 
     $("#failMessage").show(); 

     } else if(data=="Inserted"){ 
      console.log(data); 
      $("#successMessage").show(); 
     } 
    } 

問題:我想在頁面中顯示錯誤而不是控制檯。我想通知用戶。爲什麼它不適用$("#successMessage").show();

PS:我正在使用Bootstrap。另外,如何使用一個(1)div="msg"標籤顯示我的消息?

+2

您正在做「回聲」,您並未實際返回任何內容。另外,你的「其他」是錯的...將它改爲'else if(data ==='Inserted')' – Canastro

+0

@Canastro我該如何返回它? – JWizard

+0

@Canastro但在返回的問題,爲什麼它顯示在控制檯,如果我打印它使用'console.log(數據)'? – JWizard

回答

1

在阿賈克斯 「Failed!」 發現一個錯誤在你的代碼

PHP代碼

if(!$stmnt->execute()){ 
     echo "Failed!"; // Check the exclamation mark 

    }else{ 
     echo "Inserted"; 
    } 

Ajax代碼

success: function(data){ 
     viewData(); 
     $('#addData').modal('hide');//close the modal. 
     if (data=="Failed!") { // Add an exclamation mark to correct code 
      $("#failMessage").show(); 
      //console.log(data); is showing message from PHP 
     } else if (data=="Inserted") { // Change this else to else if 
      $("#successMessage").show(); 
      //console.log(data); is showing message from PHP 
     } 

更改 「Failed」。另外,將else更改爲else if的正確格式

+0

我改變了,仍然沒有顯示 – JWizard

+0

@Giovanrich當PHP迴應成功時,你會得到什麼輸出? – Ayush

+0

它插入到DB中,它必須回顯「成功」 – JWizard