0

我有一个 PHP 循环,我在其中将一些东西从我的数据库输出到我的页面,但是我遇到了一个问题,当运行代码时,它会出现在不同的行上,例如示例 1 当我希望它出现在示例 2 行中时,我尝试过 usiv div,浮动容器并使用 CSS 使其内联,但它总是像示例 1 一样结束,为什么?

示例 1:1 2 3 4 5

例 2:1,2,3,4,5

<?php

$getquery=mysql_query("SELECT * FROM dogs ORDER by ID LIMIT 5");
while($rows=mysql_fetch_assoc($getquery))

{
    $id=$rows['id'];

    echo '<br>';
    echo '<div id="block" border="1" width="200" style="float:center">';
echo '
    <a href="mypage.com/index.php?dog=', $id, '">
        <img src="/thumb/', $id, '.jpg" alt="dogs!" />
    </a>';
    echo '</div>';

}

?>
4

2 回答 2

3

从循环中取出换行符。每次有结果时,您都会打印<br>这就是它在新行上的原因

echo '<br />';
echo '<div id="block" border="1" width="200" style="float:center">';

$getquery=mysql_query("SELECT * FROM dogs ORDER by ID LIMIT 5");
while($rows=mysql_fetch_assoc($getquery)){
    $id=$rows['id'];
    echo '<a href="mypage.com/index.php?dog='. $id .'">
        <img src="/thumb/'. $id .'.jpg" alt="dogs!" />
    </a>';
}
echo '</div>';

是的评论 - 请考虑使用mysqli


带计数器:

echo '<div id="block" border="1" width="200" style="float:center">';
$i = 0;
$getquery=mysql_query("SELECT * FROM dogs ORDER by ID LIMIT 5");
while($rows=mysql_fetch_assoc($getquery)){

    $id=$rows['id'];
    echo '<a href="mypage.com/index.php?dog='. $id .'">
        <img src="/thumb/'. $id .'.jpg" alt="dogs!" />
    </a>';

    $i++;
    if($i == 5) {
        echo '<br />';
        $i = 0;
    }
}
echo '</div>';
于 2013-10-23T10:49:20.547 回答
0

看起来你的串联是错误的。

<a href="mypage.com/index.php?dog='. $id . '">
<img src="/thumb/'. $id . '.jpg" alt="dogs!" />
于 2013-10-23T10:52:16.013 回答