我想通過鏈接在後臺保存數據庫中的數據,併爲前端鏈接提供下載功能。但它給出了一個錯誤。提交表單與jquery中的鏈接參數
我的腳本 -
<script>
$(document).ready(function(){
$("#download").click(function(){
var me = $(this), data = me.data('params');
saveData(me);
});
function saveData(me){
$.ajax({
type: "POST",
url: "download_counter.php",
data: { client_id: "<? echo $client_id;?>", candidate_id: me }
});
}
});
</script>
這是鏈接(它看起來很好)
<a href="upload/<? echo $download;?>" id="download" data-params="{'ca_id':'<? echo $ca_id;?>'}"><button name="download"></button></a>
download_counter.php樣子 -
<?
if (isset($_POST['candidate_id'])) { // Form has been submitted.
$candidate_id = $_POST['candidate_id'];
$client_id= $_POST['client_id'];
$date = date("Y-m-d");
echo "client - ".$client_id;
echo "candidate - ".$candidate_id;
$query = "INSERT INTO `downloads`(`client_id`, `candidate_id`, `download_date`) VALUES ('".$client_id."', '".$candidate_id."', '".$date."')";
$result = mysql_query($query);
}
?>
當我點擊鏈接,它允許下載文件,但數據庫不會更新。 請幫忙。
因爲因爲用戶被髮送到一個新的頁面(下載)瀏覽器取消AJAX請求這是最有可能的。一種方法是在onclick函數中執行e.preventDefault()(添加e參數),然後在完成ajax時重定向用戶。或者在php中創建一個重定向頁面,然後重定向到下載。這也將計入沒有JS的用戶。 – ThoKra