0

我有一些代码从数据库中获取我的结果,然后将它们包装到一个 div 中,以便每个结果都位于单独的框中。

虽然结果很好,但我遇到的问题是这些盒子在彼此内部重复,而不是形成一个单独的盒子,这些盒子在另一个下面列出。

下面是我的php代码

   $sVisit_Id='';
         while ($row = mysql_fetch_array ($result)) {
               $url1  = $row['url1'];

                 if ($row['visit_id']!=$sVisit_Id)
                    {

                      echo '</table>'; 
                      ?> <div class="box1095"><?php
                      echo '<table><tr><td class="test" width="350px;"><strong>'.$referrer.'</strong><br /></td><td>'.$search_term.'</td></tr><table>';

                      $sVisit_Id=$row['visit_id'];
                      echo '<tr bgcolor="#333" height=30px"><td width="200px">Date/Time</td><td width="750px">Webpage</td><td width="150px"></td></tr>';
                    }

                      echo '<tr class="active" bgcolor="" onMouseOver="this.bgColor="gold";" onMouseOut="this.bg"#222222";"><td width="200px" border="">'.$row['timedate'].
   '</td><td width="750px" border="">'. $row['url1'].'</td><td width="15px" align="right" border="">'. "<a href=". $url1 ." class=''> " ?><img src="images/go_button.fw.png" width="100" height="30" alt="GO" target="_blank"/><?php "</a>" .'</td></tr>';
         } ?></div><?php 

                     echo '</table>'; 

下图显示了结果的屏幕截图。

结果截图

任何建议或指导将不胜感激。

谢谢

4

1 回答 1

0

你应该尝试这样的事情

echo '<table>';
while ($row = mysql_fetch_array ($result)) {
    // everything goes here
    echo '<tr><td>Webpage</td><td></td></tr>';
    echo '<tr><td>some text</td><td>some text</td><td><a href=""><img src="" /></a></td></tr>';
}
echo '</table>';

避免table循环(开始和结束标签),所以会有一个包含多行的表(tr)。

更新:您在条件之间有 ( <table>...<table>) if,如下所示

echo '<table><tr><td class="test" width="350px;"><strong>'.$referrer.'</strong><br /></td><td>'.$search_term.'</td></tr><table>';

没有结束标签,相反<table>,您的表格永远不会关闭。此外,只有echo '</table>';if条件的开头,没有开始标签(循环内),但结束标签在循环外。

更新:David您在循环中的最后一行末尾也有以下内容(由 指出)(未回显/打印)。

<?php "</a>" .'</td></tr>';
于 2013-10-27T00:49:46.233 回答