1

我已经为电影制作了剧本,但我有一个问题。脚本之家包含如下代码:

<div class="box">
<div id="movie"></div><div id="movie"></div><div id="movie"></div>
</div>

我已经做了一个 mysql 查询,但我不知道如何每个 div 只回显 3 条记录。我将此代码用于 mysql 查询:

$query=mysql_query("select * from movies where id=$id");
while($row=mysql_fetch_assoc($query))
  {
  echo $row['name'];
  }
4

2 回答 2

1

我想你会需要这样的东西

$query = mysql_query("select * from movies");

$result = array();

while($r = mysql_fetch_assoc($query)) {
    $result[$r['id']] = array($r['name'],$r['thumb']);
}

$i = 0;

foreach($result as $id => $data){

    if($i == 0)
    {
        echo "<div class=\"box\">";
        echo "<div id=\"movie\">";
        echo "ID: $id";
        echo "Name: $data[0]";
        echo "Thumb: $data[1]";
        echo "</div>";
        $i = $i + 1;
    }
    elseif($i == 1)
    {
        echo "<div id=\"movie\">";
        echo "ID: $id";
        echo "Name: $data[0]";
        echo "Thumb: $data[1]";
        echo "</div>";
        $i = $i + 1;
    }

    elseif($i == 2)
    {
        echo "<div id=\"movie\">";
        echo "ID: $id";
        echo "Name: $data[0]";
        echo "Thumb: $data[1]";
        echo "</div>";
        echo "</div>";
        $i = 0;
    }

}
于 2013-09-06T23:26:17.450 回答
1

具有相同ID的多个元素?不是一个好主意。

如果您的查询返回少于 3 行,您并没有说您想要发生什么。

你可以试试:

...
$x=0;
while($row=mysql_fetch_assoc($query) && ++$x<=3) {
  echo $row['name'];
}
于 2013-09-06T23:26:27.113 回答