使用PHP显示多列中的记录

时间:2012-10-25 18:38:10

标签: php two-columns

我已查看过有关我的脚本问题的所有回复。一切都很好,但没有一个人对我的问题提出了很好的补救措施。

我正在尝试显示两(2)列而不是我当前的一(1)列。

我的例子在这里: http://freeskateboardsticker.com/news/authors.php

我已多次重写脚本,但我似乎无法正确显示行和列并保持pagnation完整。

以下是我的脚本,非常感谢任何建议。

<?php include_once(realpath("templates/top.php")); ?>
<?php include_once(realpath("templates/$templates/mid1.php")); ?>

<?php
$page = @$_GET["page"];
$start = @$_GET["start"];

if (!is_numeric($page) || $page < 1)
    $page = 1;

if ($page == 1)
    $start = 0;
else
    $start = ($page * $authorsPerPage) - $authorsPerPage;

$aResult = mysql_query("select pk_alId, alEmail, alFName, alLName, alBio, alDateJoined from tbl_AdminLogins order by alFName, alLName limit $start, $authorsPerPage");
$numRows = mysql_num_rows(mysql_query("select pk_alId from tbl_AdminLogins order by alFName, alLName"));

if ($numRows > 0) {
    ?>
    <!-- Start Authors -->
    <div align="center">
        <center>
            <TABLE WIDTH="86%" BORDER="0" CELLSPACING="0" CELLPADDING="0"> 
                <TR> 
                    <TD WIDTH="100%" HEIGHT="20" COLSPAN="2" ALIGN="right" class="BodyText" VALIGN="top"><FONT COLOR="#0B75AF"> <?PHP
    if ($page > 1)
        $nav .= "<a href='authors.php?page=" . ($page - 1) . "'><span class='Link1'><u>&#171; Prev</u></span></a> | ";
    for ($i = 1; $i <= ceil($numRows / $authorsPerPage); $i++)
        if ($i == $page)
            $nav .= "<a href='authors.php?page=$i'><span class='Link4'><b>$i</b></span></a> | ";
        else
            $nav .= "<a href='authors.php?page=$i'><span class='Link1'>$i</span></a> | ";

    if (($start + $authorsPerPage) < $numRows && $numRows > 0)
        $nav .= "<a href='authors.php?page=" . ($page + 1) . "'><span class='Link1'><u>Next &#187;</u></span></a>";

    if (substr(strrev($nav), 0, 2) == " |")
        $nav = substr($nav, 0, strlen($nav) - 2);
    echo $nav . "<br>&nbsp;";
    ?></FONT>
                    </TD> 
                </TR> 
            </TABLE>
    <?php while ($aRow = mysql_fetch_array($aResult)) { ?>
                <div align="center"><center>
                        <TABLE WIDTH="720" CELLSPACING="0" CELLPADDING="0" BORDER="0"> 
                            <TR> 
                                <TD WIDTH="185"> <?php if ($showAuthorImages) { ?><img src="imageview.php?what=getAuthorPic&authorId=<?php echo $aRow["pk_alId"]; ?>">&nbsp;<?php } ?></TD> 
                                <TD WIDTH="5" VALIGN="top"> </TD> 
                                <TD WIDTH="530" VALIGN="MIDDLE"><SPAN CLASS="BodyHeading1"><?PHP echo $aRow["alFName"]; ?></SPAN>
                                    <BR><span class="Text1"><?php echo $aRow["alBio"]; ?></span><br></TD> 
                            </TR> 
                            <TR> 
                                <TD COLSPAN="3">  </TD> 
                            </TR> 
                        </TABLE>
                    </center></div>
    <?php } ?>
            <div align="center">
                <center>
                    <table width="96%" border="0" cellspacing="0" cellpadding="0">
                        <tr>
                            <td width="100%" height="20" colspan="2" align="right" valign="top">
                                <SPAN CLASS="Text4"><?php echo $nav . "<br>&nbsp;"; ?></SPAN>
                                <br>&nbsp;
                            </td>
                        </tr>
                    </table>
                </center>
            </div>
            <!-- End Authors -->
            <?php
        } else {
            // No authors found in the database
            ?>
            <!-- StartAuthors -->
            <div align="center">
                <center>
                    <table width="96%" border="0" cellspacing="0" cellpadding="0">
                        <tr>
                            <td width="100%" colspan="2" bgcolor="#FFFFFF" height="21">
                                <span class="BodyHeading">
                                    <br>No Authors Found
                                </span>
                                <span class="Text1">
                                    <br><br>
                                    No authors were found in the database. Please use
                                    the link below to return to our home page.
                                    <br><br>
                                </span>
                                <a href="index.php">Return Home</a>
                            </td>
                        </tr>
                    </table>
                </center>
            </div>
            <!-- End Authors -->
            <?php
        }
        ?>

2 个答案:

答案 0 :(得分:0)

  1. 不要使用字体标记,不推荐使用
  2. br /&gt;不是br&gt;
  3. 如果您正在写作,那么也可以用小写字母写下所有其他标签
  4. 使用一些MySQLi库(PDO等)
  5. 周期
  6. 时,不要将居中和div与对齐中心标签放在一起
  7. 在while循环中构建表行,而不是每个作者一个表(表开始之前,表结束后循环,内部同时离开onl tr / td生成)

答案 1 :(得分:0)

将循环移动到表中,每次迭代创建一个新行,而不是新表:

<div align="center">
    <center>
        <TABLE WIDTH="720" CELLSPACING="0" CELLPADDING="0" BORDER="0"> 
            <?php while ($aRow = mysql_fetch_array($aResult)) { ?>
                <TR> 
                    <TD WIDTH="185"> <?php if ($showAuthorImages) { ?><img src="imageview.php?what=getAuthorPic&authorId=<?php echo $aRow["pk_alId"]; ?>">&nbsp;<?php } ?></TD> 
                    <TD WIDTH="5" VALIGN="top"> </TD> 
                    <TD WIDTH="530" VALIGN="MIDDLE"><SPAN CLASS="BodyHeading1"><?PHP echo $aRow["alFName"]; ?></SPAN>
                        <BR><span class="Text1"><?php echo $aRow["alBio"]; ?></span><br></TD> 
                </TR> 
                <TR> 
                    <TD COLSPAN="3">  </TD> 
                </TR> 
            <?php } ?>
        </TABLE>
    </center>
</div>