读书人

新手提问:图片上的点赞功能怎么实现

发布时间: 2013-07-16 22:38:05 作者: rapoo

新手提问:图片上的点赞功能如何实现?
本帖最后由 u010107080 于 2013-06-19 22:59:47 编辑 新手诚恳求教啊~~
如题,一副图片,点击上面的"赞"按钮之后,旁边显示的已点击数增加了一个,并且记录到数据库里。应该如何实现? 数据库 asp
[解决办法]
假设有赞按钮的页面是a.asp。写一个b.asp来处理增加点击数的请求,也就是给数据库中的计数字段加1,并返回给客户端加1后的新数。
赞按钮的click事件用Javascript(JQuery)来发异步请求给b.asp,收到b.asp返回的新数之后,修改label(span)元素的value就可以显示增加了的计数了.
这是一个简单的Ajax应用.
[解决办法]
xmlhttp.open("GET","gethint.asp?q="+str,true);
中的q是查询字符串,值为str

下面那一段是连接数据库,然后循环输出值。
[解决办法]
你点击赞功能,将id传过去,asp 端接收id,然后更新表中的计数值即可。
[解决办法]

引用:
Quote: 引用:

你点击赞功能,将id传过去,asp 端接收id,然后更新表中的计数值即可。

麻烦您帮我看看代码 我写的html如下 :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script src="1/jquery-1.4.4.min.js"></script>
<title>无标题文档</title>
<style>
p{border:0px; margin:0px;padding:0px;}
</style>
<script type="text/javascript">
function dz()
{
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("zanprint").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","newtest.asp",true);


xmlhttp.send();
}
</script>
</head>

<body>
<div id = "zanprint"> 111</div>
<button id="buttonzan" name="button1" onclick="dz()" type="button" style="position:fixed; width:110px; height:40px;background-color:#03C">赞~</button>

<!--<script>
var i;
i = 1;
function jq(){
$("#buttonzan").empty();
$("#buttonzan").append(i+"人觉得很赞~");
i = i + 1;
}
</script>-->
</body>
</html>

newtest.asp如下:
<%
set conn=Server.CreateObject("ADODB.Connection")
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath("data1.mdb")

ID = "10"

sql = "update table1 set idvalue = idvalue + 1 where ID = "&CInt(ID)
conn.Execute(sql)



sql = "select idvalue from table1 where ID = "&CInt(ID)
set rs = Server.CreateObject("ADODB.RecordSet")
rs.Open sql,conn,1,1
Response.Write "" & rs("idvalue") & "perfects~"

rs.Close
Set rs = Nothing
conn.Close
Set conn = Nothing
%>

打开html后 点击按钮 数据库内容也没变 html显示的内容也没变。但是,单独打开newtest.asp的时候通过刷新网页能看到数据库内容变了,也显示在了页面上。您帮我看看这代码哪里有问题~谢谢!



document.getElementById("zanprint").innerHTML=xmlhttp.responseText;
主要是这句话,懂么?

这句话里的"zanprint"这个ID要对应<div id = "zanprint"> 111</div>这个ID

你首先在document.getElementById("zanprint").innerHTML=xmlhttp.responseText;这个句话之前加一个
alert(xmlhttp.responseText)看看弹出的是什么值

还有,调试JS最好用火狐的firebug,这样,如果有错误,也好知道什么错误,好调试

读书人网 >ASP

热点推荐