创建关注用户机制

时间:2014-07-24 21:07:52

标签: twitter-follow

我正在尝试创建一个跟随机制,用户可以在其中跟随另一个。我正在做的是如果A试图跟随B,我在下表中插入了一个针对B的电子邮件ID。现在,当A再次尝试跟随B时,将针对B检查ID,如果发现为真,则重定向并显示已经跟随但是如果A试图跟随A的人没有,则添加它们。

现在的问题是,第一部分工作正常,但如果我再次关注同一个人,它会再次进入表格。

$temp=$_GET['temp'];
echo $temp;

mysql_connect('localhost','root','');
mysql_select_db('reviewed');

$query="SELECT follow_user from follow where my_email= '".$_SESSION['email']."'";
$data=mysql_query($query);
if (!$data) { // add this check.
    die('Invalid query: ' . mysql_error()) ;
}
if(mysql_num_rows($data) > 0)
{
    while($row=mysql_fetch_array($data))
    {
        $user=$row['follow_user'];
        if($temp===$user)
        {
            header('Location:acq.php?success=1');
            $_SESSION['message'] = 'Already Following.';
        }
        else
        {
            mysql_connect('localhost','root','');
            mysql_select_db('reviewed');
            $query="INSERT INTO follow (my_email, follow_user) VALUES('".$_SESSION['email']."','".$temp."')";
            $data=mysql_query($query);
            if (!$data) { // add this check.
                die('Invalid query: ' . mysql_error()) ;
            }           
            echo "Success";
        }       
    }
}
else
{
    mysql_connect('localhost','root','');
    mysql_select_db('reviewed');
    $query="INSERT INTO follow (my_email, follow_user) VALUES('".$_SESSION['email']."','".$temp."')";
    $data=mysql_query($query);
    if (!$data) { // add this check.
        die('Invalid query: ' . mysql_error()) ;
    }           
    echo "Success"; 
}

1 个答案:

答案 0 :(得分:0)

在我看来,好像你要为A所遵循的B以外的每个用户添加一条跟踪记录。我想你可以通过在初始查询中限制为B和A来解决这个问题,即

$ query =“SELECT follow_user from follow where my_email ='”。$ _ SESSION ['email']。“'和follow_user ='”。$ temp“'”;

然后你可以删除while循环:

if(mysql_num_rows($data) > 0)
{
    header('Location:acq.php?success=1');
    $_SESSION['message'] = 'Already Following.';

}
else
{
    mysql_connect('localhost','root','');
    mysql_select_db('reviewed');
    $query="INSERT INTO follow (my_email, follow_user) VALUES('".$_SESSION['email']."','".$temp."')";
    $data=mysql_query($query);
    if (!$data) { // add this check.
        die('Invalid query: ' . mysql_error()) ;
    }           
    echo "Success"; 
}