html
<li><a class="download-link" href="<?php echo $path_data;?>">Download</a></li>
ajax
$(function(){
$('.download-link').click(function() {
var wall_id = <?php echo $wall_id;?>; //store current wall id
$.ajax({
type : 'GET',
url : 'functionality/php/download_count.php',
data : { wall_id : wall_id }
}); //ajax end
}); //live end
}); //function end
php(download_count.php
)
<?php
$wall_id = preg_replace("#[^0-9]#", "", $_GET['wall_id']);
//increment download count query
$increment_downloads = $connectDB->prepare("UPDATE database.table SET
downloads = downloads + 1 WHERE wall_id = ?");
$increment_downloads->bind_param('i', $wall_id);
$increment_downloads->execute();
?>
单击Download
链接时,我正在尝试更新download count
。但是表中的下载量并没有增加。不确定问题出在哪里。需要帮助。
更新:以上代码不适用于Firefox和Safari,但适用于Chrome。
您在var wall_id
的值周围缺少引号
var wall_id = <?php echo $wall_id;?>;
应该是
var wall_id = "<?php echo $wall_id;?>";
更改您的ajax
$('.download-link').click(function(){
var wall_id = <?php echo $wall_id;?>; //store current wall id
$.ajax({
type : 'GET',
url : 'functionality/php/download_count.php',
data : { wall_id : wall_id }
}); //ajax end
});
至
$.get( "functionality/php/download_count.php", { wall_id : wall_id } )
.done(function( data ) {
alert( data );
});
然后将其添加到php脚本的末尾
echo $_GET['wall_id'];
然后让我知道你是否得到了正确的值