2016-10-06 10 views
0

私はdatatablesを使用しています。投稿後、データベースの変更が完了した後にページを更新したいとします。しかし、今のところ、データベースが更新される前または後にページが更新されると、かなりランダムになります。コールバック関数に 'success:'を追加しようとしましたが、これは役に立ちません。ポストコールバック関数の同期

スクリプトのDataTableのprojects.php用:

<script> $(document).ready(function() { 
var projects = $('#projects').DataTable({ 
     paging:true, dom: 'Blfrtip',  colReorder: true, select: {style: 'single'}, 
     buttons: [ 
      { 
        text: 'Edit', 
        action: function() { 
         $projectID = $(projects.row('.selected').node()).data('id');      
         if ($projectID === undefined) 
         { 
          alert("Please select a project."); 
         } else { 
          window.location.href = "../projects/editProject.php?projectID=" + $projectID; 
         } 
        } 
      }, 
      { 
        text: 'Add', 
        action: function() { 
         window.location.href = "../projects/addProject.php";     
        } 
      }, 
      { 
        text: 'Delete', 
        action: function() { 
         $projectID = $(projects.row('.selected').node()).data('id');      
         if ($projectID === undefined) 
         { 
          alert("Please select a project."); 
         } else { 
          $.post("../projects/deleteProject.php", 
          { 
           projectID: $projectID, 
           function() { 
            window.location.reload(true); 
           }   
          } 
          );            
         } 
        } 
      } 
     ] }); }); </script> 

deleteProject.php:あなたは間違った場所にコールバック関数を置い

<?php 
require("../database/dbService.php"); 
require("../projects/deleteProjectService.php"); 

session_start(); 
$connection = connectToDB(); 

// check if input data is set 
if (!isset($_POST['projectID'])){ 
    header("Location: ../projects/projects.php"); 
    exit; 
} 

// input data 
$projectID = $_POST['projectID']; 

deleteProject($connection, $projectID); 
$_SESSION['message'] = "The project has been deleted!"; 


?> 

答えて

1

、それがされている必要があります:

$.post(
    "../projects/deleteProject.php", 
    { projectID: $projectID }, 
    function(){ window.location.reload(true); }   
); 
関連する問題