php - 好友列表数据库的简单设计

标签 php mysql

我在制作友谊系统数据库时遇到了一个小问题。 现在我有一张 table 叫 friend 比方说:

同 table friend :

    you      friend      approve     since
_________________________________________________
   wetube    youtube     1           4-12-2012
   facebook  wetube      1           4-12-2012

我有这个查询代码来获取名为 wetube 的用户的 friend 。

mysql_query("SELECT f.* FROM friends f inner join users u on u.username =
f.you WHERE f.friend = 'wetube' UNION ALL SELECT f.* FROM friends f inner join users u on
u.username = f.friend WHERE f.you = 'wetube'");

现在我想要的是如何获取 wetube 的 friend 并在他的页面上显示给他。

固定:

终于解决了这个问题。 所以这是表格:

CREATE TABLE IF NOT EXISTS `friends` (
  `id` int(20) NOT NULL AUTO_INCREMENT,
  `you` varchar(255) NOT NULL,
  `friend` varchar(255) NOT NULL,
  `type` varchar(255) NOT NULL,
  `since` date NOT NULL,
  `message` text NOT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `id` (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;

这是获取用户好友的php代码

<?php
$username = $_SESSION['username'];
$friends_sql = mysql_query("SELECT * FROM friends WHERE (friend = '$username' OR you = '$username') ");
while($friends_row = mysql_fetch_assoc($friends_sql)){
if ($username == $friends_row['you']) {
echo $friends_row['friend']."<br/>";
} elseif($username == $friends_row['friend']) {
echo $friends_row['you']."<br/>";
}
}
?>

亲自尝试一下,100% 有效

最佳答案

$result = mysql_query("SELECT * FROM friends WHERE friend='wetube'");
$row = mysql_fetch_array($result);

echo $row['friend'], ' - ', $row['since'];

关于php - 好友列表数据库的简单设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10128715/

相关文章:

java - 我的 spring 应用程序没有收到我的 GET

mysql - Bash 包含不工作

php - Yii2 Rest API基本身份验证无效凭证

mysql - 我如何从两个不同的表中搜索数据?

php - laravel aTob 表关系

javascript - 通过 JavaScript 将文件发送到 PHP

mysql - 在 Hibernate 中查询

php - 如何在 INSERT 查询中将美国日期格式转换为 MYSQL 格式

php - Laravel 7 - 嵌套资源路由中的范围问题

php - symfony doctrine 将一个实体对象移动到另一个实体类型