[英]How to update MySQL database row with a click on link?
我所拥有的MySQL数据库很多行。 它包含ID,名称,分数和其他一些列。
一个显示此数据库中的RANDOM项的网站。 它将与所有相应数据一起显示在我的页面上。
我想要什么我想要一个访问我的网站的人按下一个按钮,该按钮会将我的分数加+ 1。
我的密码
update_value.php
<?php
include ('database_conn.php');
$rowID = $row['ID'];
$sql2 = "UPDATE database SET Score = Score + 1 WHERE ID = '$rowID'";
$conn->query($sql2);
?>
scripts.js <<位于js / scripts.js文件夹中
$("#vote-up-q").click(function() {
$.ajax({
type: "POST",
url: "update_value.php"
})
location.reload();
});
menu.php
<span class="circle-thin-yo circle-down" id="vote-down-q">
<a href="javascript:void(0)" title="vote down">
<i class="fa fa-angle-down"></i>
</a>
</span>
database_conn.php文件包含一个$ conn,如下所示:
$conn = new mysqli($servername, $username, $password, $dbname);
简而言之:有人可以单击menu.php中显示的div#vote-up-q ,并用先前的Score + 1更新mysql值Score。
据我所知,您的网页将显示一个随机用户的数据,因此,当单击“上投票”按钮时,此随机用户的得分将递增。
在这种情况下, 您需要将随机用户的ID发送到PHP脚本 。 示例:将以下代码复制并粘贴到两个PHP文件中,然后在浏览器中打开“ html和ajax文件”:
html和ajax文件
<?php
$user_id = 28; // ◄■■ RANDOM USER FROM DATABASE.
?>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script type = "text/javascript">
function my_button ( user_id ) // ◄■■ RANDOM USER ID.
{ $.ajax( { type : "POST",
data : { "my_id" : user_id }, // ◄■■ RANDOM USER ID.
url : "update_value.php",
success : function ( data )
{ alert( data );
},
error : function ( xhr )
{ alert( "error" );
}
} );
}
</script>
</head>
<body>
<button onclick="my_button('<?php echo $user_id;?>')"> <!-- ◄■■ RANDOM USER ID -->
Upvote me!</button>
</body>
</html>
update_value.php
<?php
//include ('database_conn.php');
$rowID = $_POST["my_id"]; // ◄■■ PARAMETER FROM AJAX.
//$sql2 = "UPDATE database SET Score = Score + 1 WHERE ID = '$rowID'";
//$conn->query($sql2);
echo "User $rowID upvoted!";
?>
为了测试目的,我在“ update_value.php”中注释了数据库行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.