2017-04-23 106 views
0

我在看的是,當按鈕被點擊時,值被採取並放入變量。這些變量然後在AJAX調用中使用,所以我可以發佈它們。AJAX jQuery和PHP問題

function addTask(){ 
    $("#add_task_button").click(function(){ 
    var task_title = $('#add_task_title').val(); 
    var task_description = $('#add_task_desc').val(); 
    var task_member = $("#task_member option:selected").text(); 
    var task_status = $("#task_status option:selected").text(); 

    $.ajax({ 
     url: '../php_scripts/add_task.php', 
     type: 'POST', 
     data: {'title': task_title, 'description': task_description, 'member': task_member, 'status': task_status}, 
     success: function() { 
      alert("SUCCESS"); 
     }, 
     error: function(jqXHR,textStatus,errorThrown) { 
      alert("FAILURE"); 
     } 
    }); 
    }); 
} 

這是jQuery和AJAX調用

<?php 
require_once "cdbconnect.php"; 

$taskTitle = $_POST['title']; 
$taskDescription = $_POST['description']; 
$memberName = $_POST['member']; 
$groupName = "test"; 
$status = $_POST['status']; 


$query = "INSERT INTO task_tbl (Task_title, Task_description, Member_Name, Group_Name, Status) values('$taskTitle', '$taskDescription', '$memberName', '$groupName', '$status')"; 
$result = $conn -> query($query); 
if(!$result) 
    { 
    $conn -> error; 
    } 

mysqli_close($conn); 
?> 

這是PHP文件。由於數據未提交到表格,我總是收到失敗警報。

我在這裏錯過了什麼嗎?

+2

確定的網址是否正確?您可以調試瀏覽器的開發人員工具(Chrome和Firefox中的F12)發生的情況。 – Pharaoh

+0

只是FYI,鏈接應該是相對於頁面而不是JS。上面的PHP代碼總是返回HTTP 200,所以即使出現錯誤,它也不會進入'error'函數。 –

+0

@Pharaoh謝謝你指出。是的,它現在已經修復。非常感謝你。 –

回答

0

ajax請求失敗並不意味着您的php腳本中存在邏輯錯誤,而是請求無法首先執行。認爲「服務器無法到達」,所以你的PHP代碼甚至沒有執行。
可能的原因是:

  • 網絡問題
  • 錯誤的URL

在你的情況下,URL看起來可疑......