【发布时间】:2012-02-14 12:18:17
【问题描述】:
我在 PHP 中运行以下代码以从数据库中生成电影的随机列表,但由于genere 的值是一个数组,它只是捕获数组的第一个值。
如何修改查询,以便我可以在逗号分隔行中获取所有genere 的值。
$q = "SELECT *
FROM
title
INNER JOIN title_genere ON (title.id = title_genere.id_title)
INNER JOIN genere ON (title_genere.id_genere = genere.id)
ORDER BY RAND()
LIMIT 8";
$result = mysql_query($q);
while ($row = mysql_fetch_array($result)) {
$id = $row['id'];
$title = $row['title'];
$year = $row['year'];
$poster = $row['poster'];
$poster = str_replace("./", "lib/", $poster);
$genere = $row['genere'];
echo "<div id='a'>";
echo "<div id='b'>".$title.'</div>';
echo "<div id='c'>".$year.'</div>';
echo "<div id='d'><a href='select.php?movieid=$id'><img src='$poster' alt='' border='1' align='center' width='214' height='314' /></a></div>";
echo "<div id='e'>".$genere.'</div>';
echo "</div>";
//var_dump($genere);
}
【问题讨论】:
-
研究使用mysql的GROUP_CONCAT()函数。
标签: php mysql arrays inner-join