1

PHP を使用して MySQL データベースから一連の場所名を取得し、それらをページに表示しています。このように見えます。

ここに画像の説明を入力

私が書いたコードは、結果を上から順に表示します。

<html>
<head>
</head>
<body>

<?php

require_once("db_handler.php");

$conn = iniCon();
$db = selectDB($conn);

$query = "SELECT DISTINCT Name FROM location_categories";
$result3 = mysql_query($query, $conn);

?>

<div id="choseLoc">
Locations <br/><br/>
    <table border="0">
        <?php
        while($row = mysql_fetch_array($result3))
        {
        ?>
        <tr>
            <td><? echo $row["Name"]; ?></td>
            <td align="center"><input type="checkbox" name="checkbox[]" value="<? echo $row['Loc_Code']; ?>" /></td>
        </tr>
        <?php
        }
        ?>
    </table>
</div>
<br/>
<div id="buttons">
    <input type="reset" value="Clear" /> <input type="submit" value="Save" name="savebtn" />
</div>

</body>
</html>

多くのレコードがある場合、そのように表示するのはあまり魅力的ではありません。このような結果を表示したいと思います。

ここに画像の説明を入力

この形式で結果を表示するにはどうすればよいですか?

ありがとうございました。

4

2 に答える 2

3

これをあなたの内側のテーブルに使用してください

<table border="0">
        <?php
$a = 0;

        while($row = mysql_fetch_array($result3))
        {
if($a++ %4 == 0) echo "<tr>";
        ?>

            <td><? echo $row["Name"]; ?></td>
            <td align="center"><input type="checkbox" name="checkbox[]" value="<? echo $row['Loc_Code']; ?>" /></td>
        <?php
if($a %4 == 0) echo "</tr>";
        }
        ?>
    </table>
于 2012-07-01T11:27:02.310 に答える
1

#choseLoc が内側の div の幅の 4 倍である限り、それぞれを左にフロートできます。フロートはそれらをレイアウトします。

<div id="choseLoc" style="width:800px;">

    Locations<br/><br/>

    <?php
    while($row = mysql_fetch_array($result3)){
        ?>
        <div style="float:left; width:200px;">
            <?php echo $row["Name"]; ?> <input type="checkbox" name="checkbox[]" value="<?php echo $row['Loc_Code']; ?>" />
        </div>
        <?php
    }
    ?>

</div>
于 2012-07-01T11:28:35.910 に答える