将表链接在一起

时间:2012-05-24 17:58:50

标签: php mysql

一些前提:种植者种植农产品,农产品可以种类繁多,但有些品种只能由某些种植者种植

因此,我有4个表:

生产(id,produce_name)
品种(id,variety_name)
种植者(id,grower_name)
Grower_variety(id,grower_id,variety_id)

我从当前登录的会话中获取了我的grower_id。

我只需要在下拉列表中显示种植者种植的品种。

到目前为止我的代码是:

            <SELECT name="productcode">

            <?php

            $query   = "SELECT grower_id, variety_id FROM grower_variety WHERE grower_id = '$grower_id'"; 

            $result  = mysql_query($query) or die('Error : ' . mysql_error()); 
            while ($row     = mysql_fetch_array($result, MYSQL_ASSOC)) { 

            $variety_id   = $row['variety_id']; 

            echo ?>

            <option value="<?php $variety_id;?>">
            <?php echo $variety_id;?>
            </option>

            <?php
            ; }
            ?>

            </SELECT>

然后我陷入了困境,无法理解它。这显示了各种品种的id。但我想最终得到:

PRODUCE_NAME - VARIETY_NAME
PRODUCE_NAME - VARIETY_NAME
PRODUCE_NAME - VARIETY_NAME

在我的下拉列表中。

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

  • 1st:在产品定义中添加对品种的引用。尝试填写x和y字段然后建立你的关系:“产品属于x到y品种。”

如果y&gt; 1,你必须创建一个表来链接概念,就像链接种植者和品种一样,否则就需要一个简单的外键。

  • 2nd:根据您的要求,在您的选择中添加一个或两个联接,具体取决于关系是在FK还是TABLE下表示。