2013-12-13 52 views
1

在php循環中顯示一些mysql記錄,而每個記錄都有自己的表單。我想在mysql表中上傳一些數據,然後在點擊所需的提交按鈕後顯示數據已正確發送的信息。
信息隱藏在兩個div中 - 「successReport」和「errorReport」。
我在PHP代碼看起來類同:在while循環中提交表單後顯示信息並將新記錄上傳到MySQL表中

while(){ 
    echo '<div class="someRow"> 
     <div>here i display record form mysql table<div> 
     <div><form>here is my form with submit button</form></div> 
     <div>here are my submit informations</div> 
     </div>'; 
} 

數據上傳作品完美,但我的問題是 - 點擊提交按鈕後,該信息的div會顯示在所有可見的行,而不是隻有一個(通過選擇我)。

這是我在一個循環中使用的腳本:

<script type="text/javascript"> 
    $(document).ready(function(){ 
     $('.lanparty_<?php echo $oferta['klucz']; ?>').on('submit',function(e) { 
      $.ajax({ 
       url:'lanpartyZgloszenie.php', 
       data:$(this).serialize(), 
       type:'POST', 
       success:function(data){ 
        console.log(data); 
        $(this).next('.successReport').fadeIn('slow'); 
       }, 
       error:function(data){ 
        $(this).next('.errorReport').fadeIn('slow'); 
       } 
      }); 
      e.preventDefault(); 


     }); 
    }); 
</script> 

任何想法如何解決這個問題?

+0

'if($ result){echo「DB successfully written to。」; }其他{回聲「對不起」; }' –

+0

謝謝,但這不是我所要求的,我的問題是div描述爲class =「successReport」或「errorReport」顯示在所有行中,但不是唯一一個提交按鈕被點擊的行。 – user3038744

+0

然後,您需要將它從「while」循環中取出,並使用循環來獲取結果,然後將其顯示在其外部。 –

回答

1

把一個id +索引您successReport和errorReport DIV /秒。 就像你做了什麼,你的DIV --- $( 'lanparty_')---

例如在你的腳本

<script type="text/javascript"> 
$(document).ready(function(){ 
    $('.lanparty_<?php echo $oferta['klucz']; ?>').on('submit',function(e) { 
     $.ajax({ 
      url:'lanpartyZgloszenie.php', 
      data:$(this).serialize(), 
      type:'POST', 
      success:function(data){ 
       console.log(data); 
       $(this).next('.successReport<?php echo $oferta['klucz']';?>).fadeIn('slow'); 
      }, 
      error:function(data){ 
       $(this).next('.errorReport<?php echo $oferta['klucz']';?>).fadeIn('slow'); 
      } 
     }); 
     e.preventDefault(); 


    }); 
}); 
</script> 



hope my idea could help .. 
+0

是的,我沒有想到這一點,謝謝 – user3038744

相關問題