2016-07-06 16 views
0

我知道這已被問及我看了其他主題,但無法找到答案。兩個或更多ajax調用一個PHP文件

我有兩個ajax調用,指向同一頁面。一個刪除語言選擇,另一個刪除教育體驗。奇怪的是,在PHP頁面上的最後一個查詢工作(目前的語言)。編號: 爲什麼第一個查詢不起作用? (當試圖刪除教育EXP)


PHP

/*------------------------------------------ 
[NANY EDUCATION EXP DELETE] 
-------------------------------------------*/ 
if(isset($_POST['education_id']) && !empty($_POST['education_id'])){ 
    $education_id = $_POST['education_id']; 
    $stmt = $user_home->runQuery("DELETE FROM user_education WHERE education_id=:education_id"); 
    $stmt->execute(array(':education_id' => $education_id)); 
    $response_array['status'] = 'success'; 
}else{ 
    $response_array['status'] = 'error'; 

} 

/*------------------------------------------ 
[NANY LANGUAGE EXP DELETE] 
-------------------------------------------*/ 
if(isset($_POST['language_id']) && !empty($_POST['language_id'])){ 
    $language_id = $_POST['language_id']; 
    $stmt = $user_home->runQuery("DELETE FROM user_language WHERE language_id=:language_id"); 
    $stmt->execute(array(':language_id' => $language_id)); 
    $response_array['status'] = 'success'; 
}else{ 
    $response_array['status'] = 'error'; 

} 

JS


  /*------------------------------------------ 
      [NANY EDUCATION EXP DELETE] 
      -------------------------------------------*/ 
      $(document).on("click", ".deleteEducationEXP", function (e) { 
       e.preventDefault(); 
       var education_id = $(this).attr('id'); 
       $(this).parent().parent().parent().fadeOut(300, function() { $(this).remove(); }); 

       $.ajax({ 
        type: "POST", 
        url:'PHP/deleteData.php', 
        data:"education_id=" + education_id, 
        success:function(data){ 
         if(data.status == 'success'){ 
          console.log("success"); 
         }else if(data.status == 'error'){ 
          console.log("error"); 
         } 
        },  
        error: function(jqXHR, textStatus, errorThrown, data){ 
         console.log(jqXHR, textStatus, errorThrown, data); 
        } 
       }); 
      }); 

      /*------------------------------------------ 
      [NANY LANGUAGE EXP DELETE] 
      -------------------------------------------*/ 
      $(document).on("click", ".deleteLangugage", function (e) { 
       e.preventDefault(); 
       var language_id = $(this).attr('id'); 
       $(this).parent().parent().fadeOut(300, function() { $(this).remove(); }); 

       $.ajax({ 
        type: "POST", 
        url:'PHP/deleteData.php', 
        data:"language_id=" + language_id, 
        success:function(data){ 
         if(data.status == 'success'){ 
          console.log("success"); 
         }else if(data.status == 'error'){ 
          console.log("error"); 
         } 
        },     
        error: function(jqXHR, textStatus, errorThrown, data){ 
         console.log(jqXHR, textStatus, errorThrown, data); 
        } 
       }); 
      }); 
+3

你忘了問一個問題嗎?你需要什麼幫助? –

+0

我正在投票結束這個問題,因爲這裏沒有問題。 –

+0

@PraveenKumar哎呀。我編輯過。請參閱編輯 – raqulka

回答

2

的問題是,無論是else條款設置$response_array['status'] = "error";

他們刪除教育時,第一個if區塊成功,從教育表刪除並設置$response_array['status'] = "success";。然後進入下一個if區塊,該區塊失敗並覆蓋$reponse_array['status']。使用elseif來組合它們。

if(!empty($_POST['education_id'])){ 
    /*------------------------------------------ 
    [NANY EDUCATION EXP DELETE] 
    -------------------------------------------*/ 
    $education_id = $_POST['education_id']; 
    $stmt = $user_home->runQuery("DELETE FROM user_education WHERE education_id=:education_id"); 
    $stmt->execute(array(':education_id' => $education_id)); 
    $response_array['status'] = 'success'; 
}elseif(!empty($_POST['language_id'])){ 
    /*------------------------------------------ 
    [NANY LANGUAGE EXP DELETE] 
    -------------------------------------------*/ 
    $language_id = $_POST['language_id']; 
    $stmt = $user_home->runQuery("DELETE FROM user_language WHERE language_id=:language_id"); 
    $stmt->execute(array(':language_id' => $language_id)); 
    $response_array['status'] = 'success'; 
}else{ 
    $response_array['status'] = 'error'; 
} 

BTW,你不需要無論它的設置首先要同時使用isset()!empty(),因爲empty()檢查。

+0

謝謝你,先生!現在工作很好。非常感謝您的幫助。 – raqulka

相關問題