2014-02-26 150 views
0

我在我自己的网站上创建了一个喜欢的按钮(而不是Facebook像按钮)。当用户点击类似按钮时,计数增加1,链接变为不活动状态。 但问题是,如果我刷新页面计数自动增加。 需要帮助其在PHP中。 代码是自己喜欢的按钮

if(@$_GET['click']=="like") 
{ 
    $_SESSION['like']=1; 
    $lk=$row['likes']+1; 
    $iid=$row['id']; 
    mysql_query("UPDATE `blog` SET `likes`=$lk WHERE id=$iid "); 
    $row['likes']++; 
    $lmsg="<img title='Already Liked' src='a_data/upg.png'>"; 
} 
else 
{ 
    $lmsg="<a href='viewblog.php?id=".$gid."&click=like'> <img title='Like It' src='a_data/up.png'></a>"; 
} 

echo "<div id='like'>".$row['likes']."</div> ".$lmsg; 
+2

@Steve没有必要为所有那些'语言:郎'编辑。如果适当的标签在那里,突出显示是自动的。 – Bart

+0

您是否也在使用JavaScript进行此过程?我们也可以看到吗? –

+0

我可以知道beeter的方式来做到这一点吗? – kadamviraj

回答

0

可以使用,JavaScript的饼干和PHP会议,以防止刷新和重复点击。 如果你正在寻找一个永久的解决方案,以防止再次喜欢你需要添加用户IP到一个MySQL表与喜欢的条目ID。

但是这样,你将只有一个像每个ip一样。 (想想一家有100人工作的公司,其中只有一个人可以喜欢你的项目。)

确切而恰当的解决方案是成员资格。每个用户都被识别出一个唯一的ID。

也只是回答您的问题刷新,你可以编辑你这样的代码:

if(@$_GET['click']=="like" && !isset($_SESSION['like'])) 
{ 
$_SESSION['like']=1; 
$lk=$row['likes']+1; 
$iid=$row['id']; 
mysql_query("UPDATE `blog` SET `likes`=$lk WHERE id=$iid "); 
$row['likes']++; 
$lmsg="<img title='Already Liked' src='a_data/upg.png'>"; 
} 
else 
{ 
$lmsg="<a href='viewblog.php?id=".$gid."&click=like'> <img title='Like It' src='a_data/up.png'> </a>"; 
} 
+0

你可以用我的技术显示我的代码吗? – kadamviraj

+0

我试过仍然发生相同的.. 它得到增量evrytime我刷新。 – kadamviraj

+0

您是否在文件的开头添加了'session_start()'? – artuc