通过单独拆分显示列数据

时间:2013-09-26 11:49:27

标签: php

我正在尝试将我的数据导出到excel,它运行正常。但我想改变格式或在PHP中显示,以便我也可以在Excel中获得相同的表格式。

这是我的代码

while ($row = mysql_fetch_assoc($result)) {
echo "<table width='100%' id='ReportTable'>";
echo "<tr>";

    echo "<td width='40%'>".$row['listingsdbelements_field_name']."</td>";
   echo "<td>".$row['listingsdbelements_field_value']."</td>";
    echo "</tr>";

}
echo "</table>";

现在它显示在两列中。但我希望$row['listingsdbelements_field_name']中的数据显示在每列中,例如:它包含name1,name2,name3 ....这些应该显示为

<tr>
    <td>name1</td>
    <td>name2</td> 
    <td>name3....</td>
</tr>

,与这些相关的值应显示在每个值下。

有人可以帮助我吗?

* * EDITED *

echo "<table width='100%' id='ReportTable'>";
while ($row = mysql_fetch_assoc($result)) {

$var = explode('.', $row['listingsdbelements_field_name']);
print_r ($var);
foreach ($var as $value)
{

echo "<tr>";
    echo "<td width='40%'>".$value."</td>"; 
}
echo "</tr>";
$var1 = explode('.',$row['listingsdbelements_field_value']);
foreach($var1 as $value1)
{
    echo "<tr>";
    echo "<td>" .$value1. "</td>";

}
echo "</tr>";
}
echo "</table>";

<table width='100%' id='ReportTable'><tr><td width='40%'>price</td></tr><tr><td>1295000</td></tr><tr><td width='40%'>state</td></tr><tr><td>IL</td></tr><tr><td width='40%'>city</td></tr><tr><td>Chicago</td></tr><tr><td width='40%'>address</td></tr><tr><td>1027 West Chicago Avenue</td></tr></table>

2 个答案:

答案 0 :(得分:0)

这应该做:

echo "<table width='100%' id='ReportTable'>";
while ($row = mysql_fetch_assoc($result)) {
    echo "<tr>";
    echo "<td width='40%'>".$row['listingsdbelements_field_name']."</td>";
    echo "</tr><tr>";
    echo "<td>".$row['listingsdbelements_field_value']."</td>";
    echo "</tr>";

}
echo "</table>";

答案 1 :(得分:0)

我认为这就是你的尝试:

echo "<table width='100%' id='ReportTable'>";                                                                       
while ($row = mysql_fetch_assoc($result)) {                                                                         
    echo "<tr>";                                                                                                    

    $var = explode('.', $row['listingsdbelements_field_name']);                                                     
    foreach ($var as $value)                                                                                        
    {                                                                                                               
        echo "<td width='40%'>".$value."</td>";                                                                     
    }                                                                                                               
    echo "</tr>";                                                                                                   
    echo "<tr>";                                                                                                    
    $var1 = explode('.',$row['listingsdbelements_field_value']);                                                    
    foreach($var1 as $value1)                                                                                       
    {                                                                                                               
        echo "<td>" .$value1. "</td>";                                                                              
    }                                                                                                               
    echo "</tr>";                                                                                                   
}                                                                                                                   
echo "</table>";     

您遇到的问题是在内部循环中打开<tr>,但在外部关闭它们,因此您获得的<tr>远远超过</tr>