使用 HTML 表格的 PHP 循环

标签 php html mysql

大家晚上好

我使用的代码如下:

<?php
/**
 * The template for displaying all pages.
 * Template Name: addserverindexoci
 * This is the template that displays all pages by default.
 * Please note that this is the WordPress construct of pages
 * and that other 'pages' on your WordPress site will use a
 * different template.
 *
 * @package WordPress
 * @subpackage Twenty_Twelve
 * @since Twenty Twelve 1.0
 */

get_header(); ?>




<div id="primary" class="site-content">
    <div id="content" role="main">



        <?php while ( have_posts() ) : the_post(); ?>
            <?php get_template_part( 'content', 'page' ); ?>
            <?php comments_template( '', true ); ?>

        <?php endwhile; // end of the loop. ?>

<table border="2" bordercolor="#000000" style="background-color:#FFFFFF" width="160%" cellpadding="1" cellspacing="0">  
    <td><font face="Arial, Helvetica, sans-serif">Server Name</font</td>
    <td><font face="Arial, Helvetica, sans-serif">Server Address</font</td>
    <td><font face="Arial, Helvetica, sans-serif">Server Port</font</td>
    <td><font face="Arial, Helvetica, sans-serif">Server Description</font</td>
    <td><font face="Arial, Helvetica, sans-serif"> Status</font</td>

<?php

mysql_connect("localhost", "", "") or die (mysql_error());
#echo "Connected to MYSQL ";
mysql_select_db("starforg_search") or die (mysql_error());
#echo "Connected to Data Base";
$query = "SELECT * FROM ";
$result = mysql_query ($query) or die (mysql_error());

$num=mysql_numrows($result);

mysql_close();


$i=0;
while ($i < $num) {


        $value = mysql_result($result,$i,"servername");
        $value2 = mysql_result($result,$i,"serveraddress");
        $value3 = mysql_result($result,$i,"portnumber");
        $value4 = mysql_result($result,$i,"description");

ob_start();

if (!$socket = @fsockopen($value2, $value3, $errno, $errstr, 1))
{
  echo "&nbsp;<font color='red'><CENTRE><strong> Server Is Offline!</strong></CENTRE></font>";
}
else 
{
 echo "&nbsp;<font color='green'><CENTRE><strong> Server Is Online!</strong></CENTRE></font>";  

  fclose($socket);
}
$status = ob_get_contents();
ob_end_clean();
?>


<tr>
    <td><font face="Arial, Helvetica, sans-serif"><? echo $value; ?></font</td>
    <td><font face="Arial, Helvetica, sans-serif"><? echo $value2; ?></font</td>
    <td><font face="Arial, Helvetica, sans-serif"><? echo $value3; ?></font</td>
    <td><font face="Arial, Helvetica, sans-serif"><? echo $value4; ?></font</td>
    <td><font face="Arial, Helvetica, sans-serif"><? echo $status; ?></font</td>



<?
$i++;

}

?>  

</div><!-- #primary -->


<?php get_footer(); ?>

我想要什么 现在,正如您从 while 循环中看到的,我正在尝试显示所选字段内的所有数据。

发生了什么 我想继续循环,直到所有数据都显示出来为止,但是数据会到达我假设的页面底部,因为我没有使用 html 的结束标记,例如 。问题是,如果我为表格输入结束标记,它只会循环一次并在字段中显示 for 数据集,其余数据将不会采用表格格式。

问题 我怎样才能让循环继续显示字段中的所有数据,并显示页脚干净整洁,

注意:抱歉,如果这有点粗糙,我今天生病了:(

最佳答案

这有什么问题吗?

<table border="2" bordercolor="#000000" style="background-color:#FFFFFF" width="160%" cellpadding="1" cellspacing="0">  
<tr>
    <td><font face="Arial, Helvetica, sans-serif">Server Name</font</td>
    <td><font face="Arial, Helvetica, sans-serif">Server Address</font</td>
    <td><font face="Arial, Helvetica, sans-serif">Server Port</font</td>
    <td><font face="Arial, Helvetica, sans-serif">Server Description</font</td>
    <td><font face="Arial, Helvetica, sans-serif"> Status</font</td>
</tr>
<?php

mysql_connect("localhost", "", "") or die (mysql_error());
#echo "Connected to MYSQL ";
mysql_select_db("starforg_search") or die (mysql_error());
#echo "Connected to Data Base";
$query = "SELECT * FROM tablename";
$result = mysql_query ($query) or die (mysql_error());

$num=mysql_numrows($result);

mysql_close();


$i=0;
while ($i < $num) {


        $value = mysql_result($result,$i,"servername");
        $value2 = mysql_result($result,$i,"serveraddress");
        $value3 = mysql_result($result,$i,"portnumber");
        $value4 = mysql_result($result,$i,"description");

ob_start();

if (!$socket = @fsockopen($value2, $value3, $errno, $errstr, 1))
{
  echo "&nbsp;<font color='red'><CENTRE><strong> Server Is Offline!</strong></CENTRE></font>";
}
else 
{
 echo "&nbsp;<font color='green'><CENTRE><strong> Server Is Online!</strong></CENTRE></font>";  

  fclose($socket);
}
$status = ob_get_contents();
ob_end_clean();
?>


<tr>
    <td><font face="Arial, Helvetica, sans-serif"><? echo $value; ?></font</td>
    <td><font face="Arial, Helvetica, sans-serif"><? echo $value2; ?></font</td>
    <td><font face="Arial, Helvetica, sans-serif"><? echo $value3; ?></font</td>
    <td><font face="Arial, Helvetica, sans-serif"><? echo $value4; ?></font</td>
    <td><font face="Arial, Helvetica, sans-serif"><? echo $status; ?></font</td>
</tr>


<?
$i++;

}

?>  
</table>

并且我在您的查询中找不到表名称$query = "SELECT * FROM ";

关于使用 HTML 表格的 PHP 循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15847093/

相关文章:

php - 数据库多表查询显示结果

PHP exec() 锁定实时但不是本地

html - 如何使通知在 css 上可滚动为 fb

html - 为什么这个 div 不在屏幕上居中?

MySQL创上年记录

c# - 使用mysql数据库登录系统

MySQL在一个查询中多个表中的多个选择条件?

php - 从 WooCommerce 画廊中删除特色图片

javascript - ERR_CONNECTION_CLOSED - PHP 和 Javascript

javascript - 通过 XHR 请求下载 PDF 文件