2013-04-06 123 views
2

晚报所有,PHP循环使用HTML表格

我使用的代码如下:

<?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如</TR假设页面底部>。问题是如果我输入表格的结束标签,它将只循环一次,并在字段中显示数据集合,其余数据将不会以表格格式显示。

问题 我怎样才能循环,以保持显示的字段中的所有数据,也表明页脚非常干净,

注:对不起,如果这是一个有点粗糙今天我生病了:(

+0

你可以得到你的数据到一个数组或对象,并使用的foreach? – MonsterTKE 2013-04-06 05:00:42

+0

嗯,我实际上在等待回复时正在调查中 – BenniMcBeno 2013-04-06 05:01:49

+0

是的,如果我这样做了,并且我没有用wordpress的钱,我会写一个小类来提取这些数据并返回一个正确的数组结果。 $ results = new foreach($ results-> gimmeResults()为$ value),然后开始你的业务。这有利于从上面的文件中删除大部分的php。 – MonsterTKE 2013-04-06 05:20:13

回答

1

这有什么错呢?

<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> 

和我dont't找到表名在查询$query = "SELECT * FROM ";

+0

没有什么错,我的好男人,即时贴坚持我今天生病的主题,并指责说,谢谢你的时间:) – BenniMcBeno 2013-04-06 05:10:50

+0

你我只是删除张贴在网上力量 – BenniMcBeno 2013-04-06 05:12:24

+0

高兴地帮助!很快好起来:) – 2013-04-06 05:15:10

1
<?php while($row=mysql_fetch_array($result)){ ?> 
<tr> 
    <td><font face="Arial, Helvetica, sans-serif"><? echo $row['servername']; ?></font</td> 
    . 
    . 
</tr> 

<? } ?> 

你也可以这样使用。

+0

好的,谢谢你 – BenniMcBeno 2013-04-06 05:11:16

0
$query = "SELECT * FROM your table name"; 
$result = mysql_query ($query) or die (mysql_error()); 

$num=mysql_numrows($result); 
while($row = mysql_fetch_array($result)) 
{ 
    ob_start(); 

if (!$socket = @fsockopen($row['serveraddress'], $row['portnumber'], $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 $row['servername']; ?></font</td> 
    <td><font face="Arial, Helvetica, sans-serif"><? echo $row['serveraddress']; ?></font</td> 
    <td><font face="Arial, Helvetica, sans-serif"><? echo $row['portnumber']; ?></font</td> 
    <td><font face="Arial, Helvetica, sans-serif"><? echo $row['description']; ?></font</td> 
    <td><font face="Arial, Helvetica, sans-serif"><? echo $status; ?></font</td> 
<?php 
} 

mysql_close(); 




?> 

试试这个