【问题标题】:MySQL Table CorrelationMySQL 表相关性
【发布时间】:2012-10-31 11:58:13
【问题描述】:

我有点菜鸟,所以我不知道这是否真的可能。

我的 MySQL 数据库中有两个要关联的字段:

Level int(11)
Rank enum('Hobo','Shippai','NoLifer',Troublemaker','gangster') (and so it continues.)

我想要level 1=Hobolevel 2=Shippai等等等等。

目前看起来是这样的:

Level: {$ir['level']}

并希望它在网站上看起来像这样:

Rank: Hobo

提前感谢您的帮助...

编辑:

这是表格的代码:




";
$exp=(int)($ir['exp']/$ir['exp_needed']*100);
print "
姓名: {$ir['username']}水晶: {$cm}
级别: {$ ir['level']}
Exp: {$exp}%
金钱: $fm
帮派: ";
$qs=$db->query("SELECT * FROM gangs WHERE gangID={$ir['gang']}");
$rs=$db->fetch_row($qs);
if(!$db->num_rows($qs) )
{
打印“无帮派”;
}
其他
{
打印“{$rs['gangNAME']}”;
} 打印 ” 房产: {$ir['hNAME']}
天数: {$ir['daysold']} 健康: {$ir['hp']}/{$ir['maxhp']} 能量: {$ir['energy']}/{$ir['maxenergy']} 勇敢: {$ir['brave']}/{$ir['maxbrave']} 意志: {$ir['will']}/{$ir['maxwill']}
";

【问题讨论】:

  • 你有一张还是两张?如果只有一个,那么您的字段已经具体相关。每条记录代表每个字段的可能值的组合。
  • 由于某种原因,整个代码没有显示在块引用中,并且在代码中它不想保存编辑。

标签: php mysql enums correlation


【解决方案1】:

在里面创建一个名为rank_define的新表,id(int, primary key, auto increment), name(char20),添加你命名的rank,如下所示:

标识 |名字

1 |流浪汉

2 |希派

在你的代码中

$user_id = 1; // or whatever the users rank is
$query = mysql_query("SELECT `name` FROM rank_define WHERE id='$user_id'");

这将返回一个结果集,因此您需要这样做:

while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
    echo "rank: " . $row['name'];  // will output rank: Hobo
}

我认为这就是您的意思,是针对用户帐户还是其他什么?这是假设没有帐户,您只是在搜索结果。

如果它是用户帐户系统的一部分,您需要一个用户表,例如:id(auto inc、primary key、int)、name、rank(等等)

在排名中,他们的排名是从 rank_define 表中插入的,因此 1 = hobo、2 = shippai 等。然后您将查询该表

更新答案:

好的,所以你有 while 循环。while ($row = mysql_fetch_array($query, MYSQL_NUM)) {

它会变成这样:

    <table>
    <?php
    while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
        echo "<tr>";
        echo "<td>Name: " . $row['name'] . "</td>";  // will output their name / account whatever
        echo "<td>Rank: " . $row['rank'] . "</td>";  // will output their rank
        echo "</tr>";
    }
    ?>
</table>

【讨论】:

  • 非常感谢,但我需要在 td 单元格中打印结果。这是网站,所以你可以明白我的意思:174.164.71.37
  • 它不是为我加载的,我假设那是你的动态 ip?那么,您是想将一个结果写入表格还是不止一个?大约 5 分钟后检查我在底部的答案并更新答案;-)
  • 它是我的公共 ip,它在端口 80 上转发到我的服务器。
  • 还是不让我进去,你能把你网站的屏幕截图发给我吗?
  • 看起来不错。我上面更新的帖子有帮助吗?如果不让我知道它是怎么回事:) 这个概念是一样的
猜你喜欢
  • 2010-12-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-02-19
  • 1970-01-01
  • 1970-01-01
  • 2014-06-16
相关资源
最近更新 更多