2015-10-16 54 views
0

我完全是新的堆棧溢出和一個合理的新開發,我遇到了我的第一個Ajax函數,不幸的是,雖然我已經閱讀了大約20篇文章,但我仍然無法弄清楚需要實現我的功能。一旦我完成了,我可以執行一項功能,我通常可以得到其他任何工作。PHP函數使用on.click和AJAX

我有我建立一個「任務」系統,我有PHP在2個功能,1列出了所有過期的任務,而另一個是刪除任務功能,

的任務引導警報列div的優先級和截止日期,在每個警報中,我有2個按鈕,1個解僱,2個完成,我有一個函數在PHP中標記任務狀態爲「2」。

這是我到目前爲止。

這是我這完美的作品

<div class='alert alert-danger fade in'> 
    <strong>Task: </strong><?php echo $row[1];?>  <strong class="myAlerts">Note: </strong><?php echo $row[5];?><strong class="myAlerts">Due Date: </strong><?php echo $row[2];?> 
    <div class='pull-right'> 
    <button class='close' style='margin-right: 10px;' data-dismiss='alert' aria-label='dismiss'>Completed 
    <span class='glyphicon glyphicon-ok-circle'></span> 
    </button> 
    <button action="removeTask()" class='close' style='margin-right: 10px;' data-dismiss='alert' aria-label='dismiss'>dismiss 
    <span class='glyphicon glyphicon-remove-circle'></span> 
    </button> 
    </div> 
</div> 

1功能產生什麼這是執行任務,它位於函數完成PHP代碼/ functions.php中

我的儀表板.PHP調用函數ODTasks()和下面是我需要通過點擊結束按鈕調用的函數(不留我在模態或頁面)

function removeTask($TaskName,$taskID){ 

    if (isset($TaskName)){ 
    echo "Taskname is set"; 
    } 
    else { 
    header ('Location: index.php?error="Task completion variables not set [E/1]"'); 
    } 

    if (isset($TaskID)){ 
    echo "TaskID is set"; 
    } 
    else { 
    header ('Location: index.php?error="Task completion variables not set [E/2]"'); 
    } 

    if (file_exists('../database/mysqli_connection.php')){ 
    require('../database/mysqli_connection.php'); 
    } else { 
    require('database/mysqli_connection.php'); 
    } 

    $updateTask = "UPDATE MC_Tasks SET status='2' WHERE TaskName ='".$TaskName."' AND TaskId='".$taskID."'"; 

    $completedTaskResult = mysqli_query($mysqli_connection,$updateTask); 

    if (mysqli_affected_rows($mysqli_connection) > 0){ 
    echo "task Completed!"; 
    } else { 
    echo "Task could not be removed, lets check the query on what went wrong"; 
    echo $updateTask; 
    } 
} 

這是AJAX

\t <script type="text/javascript"> 
 
\t function removeTask() { 
 
     $.ajax({ 
 
      type: "POST", 
 
      url: '<?php Thisurl();?>', 
 
      data:{action:'removeTask'}, 
 
      success:function(html) { 
 
      alert(html); 
 
      } 
 

 
     }); 
 
} 
 
\t 
 
\t </script>

這個加到dashboard.php 什麼IM測試,但我沒有得到任何迴音從中:(

<?php 
//added for removing a task 
if($_POST['action'] == 'removeTask') { 
echo "try removing this task"; 
/* will soon be calling the function with this once the echo works 
removeTask($TaskName,$taskID); 
*/ 
} 
?> 
+3

你的問題是什麼?你有什麼嘗試,什麼不工作? – David

+1

你的AJAX在哪裏? –

+0

歡迎來到SO。請花幾分鐘時間[幫助]看看如何提出問題。在這種情況下,我們沒有看到任何ajax,並且你沒有指定什麼不起作用。 – mplungjan

回答

0

刪除按鈕action and add onClick

<button onClick="removeTask()" class='close' style='margin-right: 10px;' data-dismiss='alert' aria-label='dismiss'>dismiss 
<span class='glyphicon glyphicon-remove-circle'></span> 
</button> 
+0

Nitpicky評論:應該是「onclick」,而不是「onClick」:P – Kita

+0

ooops這是一個錯字,但在代碼中我有正確的一個 – Snm

+0

嗨,我發現一個*臉掌* *但我的阿賈克斯是垃圾,我需要它發佈操作:removeTask,以便PHP可以拿起它並執行該功能。 – Louis