我有一个下载页面。会员可以免费点击他们购买的歌曲并开始下载。我现在希望在同一时间发生Ajax请求,它会调整数据库中的下载次数。然后应该从数据库重新加载到计数器页面再次更新。如果计数器为零,则不再下载。 显然我的脚本不起作用。下载发生了,但JQuery-Script不起作用。有人有解决方案吗?
这是下载页面的链接:
<a href="get-download-files.php?file=xyz.zip"><img class="a_0" src="images/download.png" width="30" height="30" />XYZ-Song/a>
这是同一页面上的Java脚本:
<script>
$(document).ready(function(){
$(".a_0").click(function(){
$.get("zaehler.php?dl_id=1", function(data){
$("#ausgabe").html(data);
});
});
});
</script>
这是请求文件:
<?php
require_once 'includes/db_login.php';
$dl_id = $_REQUEST['dl_id'];
// counter updaten
$sql = 'UPDATE ' . $tbl_prefix . 'downloads
SET zaehler = zaehler - 1
WHERE dl_id = ' .$dl_id;
mysql_query($sql);
$abfrage = 'SELECT zaehler FROM ' . $tbl_prefix . 'downloads WHERE dl_id=' . $dl_id;
$ergebnis = mysql_query($abfrage);
while ($datensatz = mysql_fetch_array($ergebnis, MYSQL_ASSOC))
{
echo '<h3 style="color:#333;">Dein Download-Stand</h2>';
echo '<br /><br />Du hast noch ' . $datensatz['zaehler'] . ' Downloads zugut.';
}
?>
我感谢你。最好的祝福, 亨氏
答案 0 :(得分:0)
你不需要Ajax。在脚本get-download-files.php中,在将文件传送到浏览器之前更新数据库。
答案 1 :(得分:0)
你试过这个吗?
<script>
$(document).ready(function(){
$(".a_0").click(function(){
$("#ausgabe").load("zaehler.php?dl_id=1");
});
});
</script>
您可以通过在函数中添加alert()来检查代码是否已执行。如果警报触发,则执行该功能。
<script>
$(document).ready(function(){
$(".a_0").click(function(){
alert('Function is fired!'); // Debug
$("#ausgabe").load("zaehler.php?dl_id=1");
});
});
</script>