2016-03-19 42 views
1

我正在使用PHP,HTML和JQuery來開發我的最終項目並開發Web應用程序。我在我的數據庫中有一些記錄,首先我在主頁面中顯示div中每個記錄的摘要。第二,當用戶點擊主頁面中的詳細信息按鈕時,我想創建以主頁面爲背景的彈出窗口。我可以使用Javascript和Jquery創建彈出窗口,但是我無法將每條記錄的ID傳遞給Details按鈕或彈出窗口div。這裏是我的代碼的一部分:如何將值從數據庫傳遞到在php中彈出?

<?php $count = 0; ?> 
    <div class="container"> 
     <div class="col-md-9 join-info"> 
      <div id="timeline"> 
<?php 
$campaigns = $campaign_arr; 
for($i=0;$i<count($campaigns);$i++){ 
$aid1 = $campaigns[$i]; 
?>    <a name="camps"></a> 
       <div class="timeline-item" > 


        <div> 
         <div class="baslik"> 
           <h2> <?php echo $aid1["aid_name"]; ?> </h2> 
           <section class="fave"></section> 
          </div> 

         <div class="aid_details"> 
          <p> 
           <?php echo $aid1["aid_comment"]; ?> 
          </p> 
         </div> 
               <div class="bottom"> 
         </div> 
<?php 
$item = new Items(); 
$item->openDB(); 
$items = $item->getItemsByAidID($aid1["id"]); 
for($j=0;$j<count($items);$j++){ 
    $it = $items[$j]; 
?> 
<div class="rates"> 
          <p> <?php echo $it["item_name"]; ?> </p> 
          <div class="progress"> 
           <div class="progress-bar progress-bar-danger" style=<?php echo "width:" . $it["fill_rate"] . "%"; ?> ></div> 
          </div><p> eksik: <?php echo $it["needed"]; echo "\n"; ?> &nbsp karşılanan: <?php echo $it["provided"]; ?> </p> 
         </div> 
         <?php } $item->closeDB(); ?> 

         <div class="col-md-3 join-link"> 
          <a data-js="open" class="btn">Show Details >></a> 

         </div> 

        </div> 
       </div> 
       <?php $count++; } ?> 
      </div> 

     </div> 
    </div> 
<!-- end of embedding campaigns--> 
</main> <!-- cd-main-content --> <!-- in filter.php page --> 
      </div> 

     </div> 
</div> 
<div class="container"> 
     <div class="col-md-9 join-info"> 
      <div id="timeline"> 
<div class="popup"> 

    <div class="timeline-item"> 
    <div class="timeline-content"> 

         <div class="aid_details"> 

          <!-- I have failed this point --> 
         </div> 

<button name="close">Back</button> 
<button name="Katıl">Close!</button> 
        </div> 
       </div> 
       </div><!--popup --> 
<!----></div></div></div> 

我顯示在主頁在不同的div在數據庫中的每個記錄,這些div有一個顯示詳細信息按鈕。問題是我無法將每個記錄的aid_id值傳遞給popup。是否有人需要幫忙?對不起我的英語,我是PHP初學者。 有JavaScript部分創建彈出窗口:

function popupOpenClose(popup) { 

    /* Add div inside popup for layout if one doesn't exist */ 
    if ($(".wrapper").length == 0){ 
     $(popup).wrapInner("<div class='wrapper' ></div>"); 

    } 

    /* Open popup */ 
    $(popup).show(); 


    /* Close popup if user clicks on background */ 
    $(popup).click(function(e) { 
     if (e.target == this) { 
      if ($(popup).is(':visible')) { 
       $(popup).hide(); 
      } 
     } 
    }); 

    /* Close popup and remove errors if user clicks on cancel or close buttons */ 
    $(popup).find("button[name=close]").on("click", function() { 
     if ($(".formElementError").is(':visible')) { 
      $(".formElementError").remove(); 
     } 
     $(popup).hide(); 
    }); 
} 

$(document).ready(function() { 
    $("[data-js=open]").on("click", function() { 
     popupOpenClose($(".popup")); 
    }); 
}); 
+0

我可以看到你在哪裏迴應了活動詳情,但是我看不到你用$ it數組做什麼,是在彈出窗口中想要的位? – Billy

+1

只是關於你的PHP的評論...我會看看分組你的PHP它非常分散。 – Miles

+0

我編輯了我的代碼。 @Miles,我只是縮短了我的代碼,使其可以理解。對不起,這樣結束 –

回答

0

一個簡單的方法來做到這將是創建在查詢中發現的每個項目一個隱藏的div,並給它根據項目ID的唯一ID。

<div id='hidden_details_<?php echo $the_item_id; ?>' class='hidden_class'> 
    put the details here 
</div> 

我會然後使用jQuery打開每個隱藏的divs,當他們的具體細節按鈕被點擊。

被告知這隻會是一個有效的負載,如果你沒有很多的項目。如果你有超過10個或20個項目(只是猜測),我會尋找一個不同的解決方案,以避免巨大的頁面加載。

相關問題