[英]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.