您将需要使用AJAX来执行此操作。这是一个简单的例子:
HTML
只是一个简单的链接,就像你在问题中一样。但是,我将稍微修改结构以使其更清洁:
<a id='update_status' href='updateRCstatus.php' data-rxdtime='$time' data-txid='$txid' data-balance='$balance' data-ref='$ref'>Update</a>
我在这里假设此代码是带有插值变量的双引号字符串。
JavaScript
既然你标记了 jQuery... 我将使用 jQuery :)
浏览器将侦听click
链接上的事件并对适当的 URL 执行 AJAX 请求。当服务器发回数据时,将触发成功函数。在 jQuery 文档中了解更多信息。.ajax()
如您所见,我.data()
用于获取 GET 参数。
$(document).ready(function() {
$('#update_status').click(function(e) {
e.preventDefault(); // prevents the default behaviour of following the link
$.ajax({
type: 'GET',
url: $(this).attr('href'),
data: {
rxdtime: $(this).data('rxdtime'),
txid: $(this).data('txid'),
balance: $(this).data('balance'),
ref: $(this).data('ref')
},
dataType: 'text',
success: function(data) {
// do whatever here
if(data === 'success') {
alert('Updated succeeded');
} else {
alert(data); // perhaps an error message?
}
}
});
});
});
PHP
看起来你知道你在这里做什么。重要的是输出适当的数据类型。
<?php
$rxdtime=$_GET["rxdtime"];
$txid=$_GET["txid"];
$balance=$_GET["balance"];
$ref=$_GET["ref"];
header('Content-Type: text/plain; charset=utf-8');
// -------- SQL Query -------
// your logic here will vary
try {
// ...
echo 'success';
} catch(PDOException $e) {
echo $e->getMessage();
}