2016-07-05 5 views
0

대시 보드에 로그인 할 때 사용자에게 알림을 표시하려는 프로젝트에서 작업하고 있습니다. 알림은 다음과 같이보기로 전달 및 표시 : 내가 경고를 해제 할 경우 통지 한 후 데이터베이스에서 삭제 할 수있는 방법을 찾는 것입니다 달성하기 위해 노력하고 무엇PHP보기에서 경고를 닫을 때 SQL 데이터베이스에서 삭제

   <div class="box-body"> 
       <?php foreach ($notifications as $notification) {?> 
         <div class="alert alert-danger" style="padding: 0px; margin-bottom: 10px;"> 
          <a href="#" class="close" data-dismiss="alert" aria-label="close">&times;</a> 
          <strong><?php echo $notification->getNotificationTitle();?></strong> 
          <?php echo $notification->getNotificationDescription();?> 

         </div> 
       <?php }?> 
     </div> 

. 나는 codeigniter와 MySQL 데이터베이스를 사용하고있다.

+2

해고를 감지하기 위해 JS 코드가 필요하다면 서버에 아약스 요청을 보내 관련 레코드를 삭제하라. 순수하게 서버 쪽 일 뿐이며 클라이언트에서하는 일을 전혀 감지 할 수 없으므로 php 자체에서이를 수행 할 수 없습니다. –

답변

0

두 개의 버튼으로 나만의 맞춤 팝업을 만들 수 있습니다. 승인 및 해지라고합시다. 그리고 AJAX를 사용하여 데이터베이스의 ID를 사용하여 레코드 삭제 요청을 할 수 있습니다. foreach 루프에 삭제 앵커를 표시하여 해당 레코드의 ID를 제공합니다. 같은,

<a id='record_here_goes_the_id' class='record_delete_btn'> 

을 그리고 그의 클릭에 당신은 팝업 표시하고 또한 클릭 같은 버튼의 ID를 얻을 :

$('.record_delete_btn').on('click', function(){ 
 
    var id = $(this).attr('id'); 
 
    id = id.replace('record_', '');//and now you have the id of the record you want to delete, just put in somewhere to get it for your AJAX request 
 
});

당신은 수의 말합시다 id를 숨겨진 입력 또는 다른 숨겨진 요소에 넣으십시오. 그냥 그 기반으로 AJAX 요청을 방금 위에서 얻은 ID를 전달하고 수행

$('#dismiss').on('click', function(e){ 
 
    e.preventDefault(); 
 
    //here goes your $.ajax request 
 
}); 
 
$('#approve').on('click', function(e){ 
 
    e.preventDefault(); 
 
    //here you hide the popup and do nothing, ex: $('.popup').hide(); 
 
});
<div class='popup'> 
 
    <p>What are you going to do?</p> 
 
    <a id='dismiss'>Dismiss</a> 
 
    <a id='approve'>Approve</a> 
 
</div>
당신은 당신이 버튼을 해고의 클릭에 기록을 삭제됩니다 PHP 파일에 AJAX 요청을 . 이와 같은 조치가 필요합니다. 물론 CSS를 사용하여 팝업과 다른 모든 것을 스타일링해야합니다. 페이지로드시 팝업을 숨 깁니다.

관련 문제