我在我的网站上有几个这个脚本的克隆,它们可以工作。该功能是启用喜欢,跟随等(任何需要参考表来存储类似的东西,如下)等问题是我的喜欢功能它运行.post 12次。我的跟随脚本具有相同的jquery代码但不执行此操作。所以我求助于检查我的fave.php / unfave.php文件,但我找不到任何错误。它与我的follow.php / unfollow.php文件相同。有人能发现或意识到这种奇怪的行为吗?
基本上我的数据库中有12个条目。为什么呢?
fave.js
$(document).ready(function(){
$(function(){
$(".fvspan").on("click", ".favebtn", function(){
var fvs = $(this).attr('id');
if(fvs)
{
$.ajax({
type: "POST",
url: "/mobile/inc/vdfave.php",
data: "fvs=" + fvs,
cache: false,
success: function(data){
$("span#" + fvs + ".fvspan").html("<img id='" + fvs + "' class='favebtn-un' src='/assets/faved.png' height='50px'>");
}
});
}
else { }
});
});
$(function(){
$(".fvspan").on("click", ".favebtn-un", function(){
var fvs = $(this).attr('id');
if(fvs)
{
$.ajax({
type: "POST",
url: "/mobile/inc/vdunfave.php",
data: "fvs=" + fvs,
cache: false,
success: function(data){
$("span#" + fvs + ".fvspan").html("<img id='" + fvs + "' class='favebtn' src='/assets/fave.png' height='50px'>");
}
});
}
else { }
});
});
});
vdfave.php
<?php
session_start();
//Make an SQL connection
include('/home/bfreak/www/inc/dbc.php');
$myself = $_SESSION['username'];
$ref = $_POST['fvs'];
$date = date("Y-m-d h:i:s");
if (!isset($_SESSION['loggedIn'])) { }
else{$myinfo = mysql_query("SELECT * FROM users WHERE username = '$myself'");}
while($myid1 = mysql_fetch_array($myinfo))
{
$myid = $myid1['id'];
//Insert form data into database with corresponding structure, in respective order, of SQL columns.
$fvd = "INSERT INTO faves (vid, usr, date) VALUES ('$ref', '$myid', '$date')";
if (!mysql_query($fvd, $con)) {die('Fatal Error: ' . mysql_error());}
}
mysql_close($con);
?>
答案 0 :(得分:0)
确保数据库中的users
表中没有重复的用户名。 while
循环可能正在运行12次。
改变这个:
mysql_query("SELECT * FROM users WHERE username = '$myself'");
以下:
mysql_query("SELECT * FROM users WHERE username = '$myself' LIMIT 1");
再次检查。
答案 1 :(得分:0)
我明白了!我在循环中运行了js脚本。我把它拿出来然后就可以了!