我有一个网站,目前的搜索表单是 ASP。搜索调用我的 SQL 数据库并将结果放入一个表格中,其中包含每个搜索结果的 HTML 页面的可点击图像。目前我正在按我的 SQL 表中的字段对结果进行排序。每个搜索结果的代码如下:
<a href="/model-homes/<%# DataSet1.FieldValue("address", Container) %>/index.html"><img src="/model-homes/<%# DataSet1.FieldValue("address", Container) %>/plan-1st-floor.jpg" width="400" border=0/></a>
我想要做的是,一旦单击链接,它就会向 SQL 数据库发送更新,并为查看次数增加 +1。通过这种方式,我可以将排序更改为查看次数,并在搜索结果顶部获取最受欢迎的链接。SQL 数据库的主键是“地址”字段,如果这有助于增加视图计数。
对此的任何帮助将不胜感激,因为我似乎处于编程知识的极限。
-- 更新#1 --
所以我正在努力解决这个问题。我可以像这样将用于更新 SQL 数据库的代码添加到链接中吗?它似乎不起作用。
<a href="/model-homes/<%# DataSet1.FieldValue("address", Container) %>/index.html" onclick="UPDATE dbo.main SET pageview=pageview+1 WHERE address=<%# DataSet1.FieldValue("address", Container) %>"><img src="/model-homes/<%# DataSet1.FieldValue("address", Container) %>/plan-1st-floor.jpg" width="400" border=0/></a>
我不确定是否必须以另一种方式称呼它。我在尝试。
-- 更新#2 --
所以我尝试再次更改代码以解决这个问题。所以现在我试图通过一个函数传递它,因为我认为它不会在超链接中工作。所以这就是我所做的:
<a
href="model-homes/<%# DataSet1.FieldValue("address", Container) %>/index.html"
onclick="UpdateDB(<%# DataSet1.FieldValue("address", Container) %>)"
>
<img
src="model-homes/<%# DataSet1.FieldValue("address", Container) %>/plan-1st-floor.jpg"
width="400"
border=0
/>
</a>
这是功能:
function UpdateDb(@address)
{
SELECT pageview FROM dbo.main WHERE address=@address
UPDATE pageview=pageview+1 FROM dbo.main WHERE address=@address
}
对此的任何帮助将不胜感激。