在echo onClick之后删除sql行

时间:2014-03-19 07:17:44

标签: javascript php jquery mysql sql

我正在学校计划中制作一个智力竞赛节目。我有一张表格,其中包含世界卫生组织提出的问题(在教师中),问题是什么,另一个表格是关于该问题的答案是什么。所以,我有一张三柱的桌子。

现在,我试图做的是,当页面加载时,它会显示一些标记的链接。我回应了每个链接,当你点击它们中的任何一个时,将从MySQL表和"问题"中取出一个随机行。以及谁问这个特定问题将公开展示。

到目前为止,我能够做到这一切。但这就是问题所在。

我希望以这样一种方式完成,即在点击问题之后(确切地显示它之后),特定行将从MySQL表中删除。我不想使用计时器,因为每个问题分配的时间不同。我想知道是否有某种"点击后#34;在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>


 
 

1 个答案:

答案 0 :(得分:0)

1,你必须制作页面delete_question.php(或类似方法):

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

2,使用ajax删除onclick处理函数将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'] ?>">