我正在学校计划中制作一个智力竞赛节目。我有一张表格,其中包含世界卫生组织提出的问题(在教师中),问题是什么,另一个表格是关于该问题的答案是什么。所以,我有一张三柱的桌子。
现在,我试图做的是,当页面加载时,它会显示一些标记的链接。我回应了每个链接,当你点击它们中的任何一个时,将从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>
答案 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'] ?>">