如何正确管理mysql的结果

时间:2014-09-17 23:08:52

标签: php mysql

我从一个较大的MySQL表中拉出一列数据,数据可能如下所示:

apple; banana; peach; blue paper
peach; apple; car; truck; pen; computer; pencil; marker
computer
examples; etc
more; materials; 

当我接受输出时,我正在尝试编写将其放入HTML选择框的PHP代码,即每个唯一值。例如,我不需要看苹果两次或计算机,我希望下拉列表看起来像这样:

apple
banana
peach
blue paper
car
truck
etc...

这是我的PHP代码。我无法弄清楚如何获取输出并将其分开并使其独特并再次分离。我的假设是我必须使用$rowmod并在其上运行某种while循环。

while ($row = mysql_fetch_assoc($productlist))
{ 
    $rowmod = strtr($row['product']," ","_");
    $rowmod = strtr($row['product'],"; ", "\n");
    echo "<option value='$rowmod'>$rowmod</option>";
}

1 个答案:

答案 0 :(得分:1)

首先构建产品列表,删除重复项,然后在第二个循环中吐出<option>

$products = array();

while ($row = mysql_fetch_assoc($productlist))
{
    $names    = explode('; ', $row['product']);
    $products = array_merge($products, $names);
}

$products = array_unique($products);

foreach ($products as $product)
{
    echo "<option value='$product'>$product</option>";
}