PHP将右行放在右侧的html div中

时间:2016-03-08 15:58:54

标签: php html5

这个问题有点难以解释,但我会尽我所能。

我有一个数据库,其中包含一个名为content 3个列的表,我正在尝试将这些值作为行放入并将它们放在不同的<div>’s中。这是我到目前为止所写的内容

<?php
$sql = "SELECT * FROM content";
$query = mysqli_query($db, $sql) or die (mysqli_error());

$contentDisplay = '';
while ($row = mysqli_fetch_array($query)) { 

    $content_id = $row["id"];
    $content_title= $row["title"];
    $content_text = $row["text"];

    $contentDisplay .= '<h1>'.$content_title.'</h1> <p>'.$content_text.'</p>' ."\n";        
} 

$row_cnt = $query->num_rows;
printf("Result set has %d rows.\n", $row_cnt);

?>

行计数给出4行,这是正确的行数。

在我的html中,我<?php echo $contentDisplay; ?>将所有4行相互推出,但我需要在第一行<div>显示第一行,第二行显示<div>等等。提前谢谢

更新:我忘了说我的html部分中的<div>'s有不同的样式。我需要的只是一个<div>中的第一行(如页面顶部)和另一个<div>中的第二行(如页面底部所示):)

Update2:这里是html代码

<div class="content-top">
    <section>
        <h1></h1>
        <p></p>
    </section>
</div>

<div class="content-left">
    <section>
        <h1></h1>
        <p></p>
    </section>
</div>

<div class="content-center">
    <section>
        <h1></h1>
        <p></p>
    </section>
</div>

<div class="content-right">
    <section>
        <h1></h1>
        <p></p>
    </section>
</div>

我希望第一行显示在<div class="content-top"> <div class="content-left">第二行<div class="content-center"><div class="content-right">第四行

中的第二行

2 个答案:

答案 0 :(得分:0)

<?php
$sql = "SELECT * FROM content";
$query = mysqli_query($db, $sql) or die (mysqli_error());

$rows = [];
while ($row = mysqli_fetch_array($query))
    $rows[] = '<h1>'.$row['title'].'</h1> <p>'.$row['text'].'</p>' . "\n";        
?>

<div class="content-top">
    <section>
        <?php echo $rows[0]; ?>
    </section>
</div>

<div class="content-left">
    <section>
        <?php echo $rows[1]; ?>
    </section>
</div>

<div class="content-center">
    <section>
        <?php echo $rows[2]; ?>
    </section>
</div>

<div class="content-right">
    <section>
        <?php echo $rows[3]; ?>
    </section>
</div>

答案 1 :(得分:0)

$contentDisplay .= '<div><h1>'.$content_title.'</h1> <p>'.$content_text.'</p></div>' ."\n";

只为每行添加div? :)这样,数据库中的每一行都会得到一个div。

每一行都会附加到$contentDisplay变量,但由于你所做的就是打印它,你可以直接打印html。

我不确定你为什么被投票,因为你问的是一个有效的问题代码,显示你到目前为止所尝试的内容。