因此,我正在构建一个非常简单的网站,该网站涉及单击按钮的图像,从而导致变量减少一个。然后,该变量通过PHP存储在MySQL数据库中。
下次单击该按钮时,它应该从数据库中选择相同的变量,将其取下1,然后将其更新回服务器。这是我的代码的相关部分:
<!DOCTYPE html>
<html>
<head>
<title>...</title>
</head>
<body>
<script type="text/javascript">
function clickedFunction(){
<?php
$sql = "SELECT current_clicks FROM clicktable WHERE id=1";
$query = mysqli_query($con, $sql);
$row = mysqli_fetch_assoc($query);
$newclicks = $row["current_clicks"] - 1;
$sql = "UPDATE clicktable SET current_clicks='$newclicks' WHERE id=1";
$query = mysqli_query($con, $sql);
?>
click_data = <?php echo json_encode($newclicks)?>;
}
</script>
<div>
<img id="button" src="button_unpressed.png" onmousedown="clickedFunction()">
</div>
<div id="clicks_div">
<script type="text/javascript">
document.write(click_data);
</script>
</div>
</body>
</html>
所以我的问题是,单击该按钮后,一切正常,current_clicks减少1并更新了数据库。但是,此后单击按钮不会改变任何内容。似乎SELECT函数仅在第一次使用,并且在调用该函数时不会再次检索该变量。它应该每次都返回新的current_clicks ...我不了解PHP和MySQL的工作原理吗?
谢谢。