0

我有一个 SQL 语句,它输出存储在 MySQL 数据库中的教学资源表。我可以在表格中输出教学资源列表,这很好。我可以使用一系列超链接,每个教学资源一个,这样当你点击超链接时,它会下载资源。代码如下:

echo '<a href="'.($row['resource_name_path']).'?res_id='.$row['resource_id'].'"style="color:#900">'.htmlspecialchars($row['hyperlink_resource_name']).'</a>';

但是,每次有人单击超链接时,我不仅希望下载资源,而且希望每次下载教学资源时 MySQL 数据库中的“下载次数”字段都增加 1。这会让您知道每种教学资源被下载了多少次,以查看哪个最受欢迎。问题是如何?

上面的超链接允许下载教学资源,但是我如何“允许下载”并运行 SQL 语句来更新“下载次数”字段?我可以在不离开页面的情况下运行 PHP 函数,使用 javascript 调用它吗?

这对我来说似乎是不可能完成的任务,所以任何建议都将不胜感激,这是第一次来这里,所以放轻松!

4

2 回答 2

0

是的,您可以使用 javascript 运行 php 脚本来更新 MySql 表。使用 AJAX 来完成,这样您就不必离开页面。

尝试谷歌搜索 AJAX 代码示例以了解如何使用它。

于 2013-09-18T21:48:18.683 回答
0

只是一个想法......但我真的不喜欢在任何数据库中增加计数字段。更新的内容并不总是很清楚,并且计数可能会以 0 纸迹横向排列以解决原因。与其增加一个字段,不如创建一个名为“下载”的表或某种程度的表,该表为每次下载保存一行以及一个 ID,以将其映射到正在下载的资源。要从此设置中获取总下载计数,请使用简单的选择 id,count(1) from table group by id。

单击链接时,您仍然需要运行“插入”语句,因此这并不能真正回答您的问题....但是现在您将拥有一个每次下载一行的表格,可以很容易地被视为对您的下载计数的验证

于 2013-09-18T22:05:00.300 回答