![](/img/trans.png)
[英]How do I change a “button” button to a “submit” button onclick without submitting after the onclick event is completed?
[英]How do I update MySQL database using a button's onclick event?
好吧我知道這不能用PHP完成,我認為它是通過使用Ajax / Javascript來完成的...不幸的是我對這些很低,我需要你的幫助..
所以我根據玩家為用戶選擇的球隊所玩的球員做了一個<select>
。 它工作正常,沒有問題。
我需要的是一個按鈕,它將為用戶選擇的播放器添加1個XP。
<?php
$query = mysql_query("SELECT `team` FROM `users` WHERE `username`='". $_SESSION['username'] ."'");
$row2 = mysql_fetch_assoc($query);
$result = mysql_query("SELECT `name` FROM `players` WHERE `team`='". $row2['team'] ."'");
$dropdown = "<select name='players'>";
while($row = mysql_fetch_assoc($result)) {
$dropdown .= "\r\n<option value='{$row['name']}'>{$row['name']}</option>";
}
$dropdown .= "\r\n</select>";
echo $dropdown;
?>
<button onclick="">Support</button>
就我而言,更新看起來像這樣:
$oldxp = mysql_query("SELECT `xp` FROM `players` WHERE `name`="the option the user selected,got stuck here");
mysql_query("UPDATE `players`SET `xp`=''". $oldxp ."' + 1' WHERE `name` = "the option the user selected, got stuck here");
所以我需要的是如何獲得用戶選擇的內容並將其替換為“用戶選擇的選項,卡在這里”以及如何在Java中執行此操作,因為我無法將該PHP代碼放入onclick
事件中因為它不起作用?
非常感謝。
更改你的按鈕html
- 添加onclick功能
HTML:
<button onclick="saveData()">Support</button>
單擊按鈕,向服務器發送ajax請求並運行查詢。
jQuery的:
function saveData(){
$.ajax({
type: "POST",
url: "your_php_page.php",
data: { name: $("select[name='players']").val()},
success:function( msg ) {
alert( "Data Saved: " + msg );
}
});
}
PHP:
your_php_page.php:
$sql = "UPDATE `players`SET `xp`= `xp`+ 1 WHERE `name` = '".$_REQUEST['name']."'";
if(mysql_query($sql)){
return "success!";
}
else {
return "failed!";
}
你不應該使用mysql_*
因為它已被棄用。 你應該使用pdo
或mysqli_*
首先,Java和Javascript是完全不同的語言。 除了名稱和它們都是編程語言之外,它們共享的很少。
您需要使用Ajax來執行此操作,因此您需要在服務器上使用AJAX文件,AJAX可以請求運行您想要的查詢。 然后您將使用AJAX請求此文件添加XP,我建議您使用jQuery( http://jquery.com/ )進行AJAX調用,因為它比純JavaScript更容易使用。
將jQuery包含到您的站點后,您可以使用以下命令進行ajax調用:
$.ajax({
type: 'post',
url: 'http://domain.com/myscript.php',
success: function(data){
// callback function
}
});
文檔: https : //api.jquery.com/jQuery.ajax/
您可以在函數中包裝ajax調用,然后使用onclick在您想要使用的按鈕上調用該函數。
例如:
<button onclick='javascript:ajaxCall()'>Call AJAX</button>
function ajaxCall(){
// include code above
return false; // not always essential, but I usually return false.
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.