2014-03-19 46 views
0

我正在爲我們的學校計劃中的測驗節目製作程序。我有一張載有世界衛生組織問題的表格(教師之間),問題的答案是什麼,問題的答案是什麼。所以,我有一張三列的桌子。在回聲onClick後刪除sql行

現在,我試圖做的是,當頁面加載時,它會顯示一些標記的鏈接。我回應每一個鏈接,當你點擊其中的任何一個鏈接時,將從MySQL表中獲取一個隨機行,並且「問題」以及誰問這個特定問題將被公開顯示。

到目前爲止,我能夠做到這一切都很好。但這是問題。

我想這樣做,點擊問題後(確切地說,顯示之後),將從MySQL表中刪除特定的行。我不想使用計時器,因爲爲每個問題分配的時間不同。我想知道在javascript和AJAX中是否存在某種「點擊後」功能(或者某種方式)。或者也許是一個PHP代碼?

對於沒有問題的問題感到抱歉。歷史老師在這裏。 :)

順便說一下,這裏是我的代碼的一部分:

<?php 
    $checkrow = $db->query("SELECT * FROM questions WHERE `who` = $teachers"); 


    while ($row = $checkrow->fetch(PDO::FETCH_ASSOC)) 
    { 
     $who = $row['who']; 
     $question = $row['question']; 
     $date =$row['date_asked']; 

     $ask = $db->query("SELECT COUNT(*) FROM teachers WHERE science = $from AND who = $teachers"); 
     $count = $ask->fetch(PDO::FETCH_NUM); 

     if($count[0] == 0) { 
       echo '<a href="#" onClick="readmsg();"> MYSTERY QUESTION </a>'; 
       $fromwho = "From science Department."; 
       echo "<br>"; 
     } else { 
       echo '<a href="#" onClick="readmsg();"> MYSTERY QUESTION </a>'; 
       $fromwho = "From your Arts Department."; 
       echo "<br>"; 
     } 
    } 
?> 

,這裏是我的javascript。

<script language="javascript"> 
     function readmsg(){ 
      var qst = "<?php echo $question; ?>"; 
      var dte = "<?php echo $date; ?>"; 
      var frm = "<?php echo $fromwho; ?>"; 

      document.getElementById("displaymsg1").textContent = qst; 
      document.getElementById("displaymsg2").textContent = dte; 
      document.getElementById("displaymsg3").textContent = frm; 
     } 
</script> 




回答

0

月1日,你必須讓網頁delete_question.php(或方法是這樣):

<?php 
$db->query(('DELETE FROM questions WHERE ID=' . $_GET['uid']); // make it safer 
echo '{result:"done"}'; 
?> 

2,使刪除onclick處理函數使用Ajax發送的UID指定

function delete_question(el) { 
    $.ajax({ 
     url : 'delete_question.php', 
     dataType : 'json', 
     data : { 
      uid : el.dataset.uid 
     }, 
     success : function(response) { 
      // remove line? 
      $(el).parent().remove(); 
      alert(response.result); 
     } 
    }); 

3ND:添加處理程序元素

<a href="#" onclick="delete_question(this)" data-uid="<?php echo $row['ID'] ?>"> 
+0

感謝你的回覆。我會馬上完成並更新。 :)由於某種原因, – user3400511

+0

行不會被刪除。 =( – user3400511