【问题标题】:php generated table using rowspanphp使用rowspan生成表
【发布时间】:2015-03-30 19:35:40
【问题描述】:

我正在使用此代码生成一个表,随后将对其进行修改以将数据上传到 mysql 数据库。

<?php
$start_loc_number= 1 ;
$start_loc_alpha= 'A' ;
$end_loc_number= 10 ;
$end_loc_alpha= 'J' ;

$out = ''; 

   $out .= '<table border = 1 bordercolor="#FF0000">';

    for($tr='A';$tr<=$end_loc_alpha;$tr++)
    { $out .= "<tr>";
        for($td=1;$td<=$end_loc_number;$td++)
        { $out .= '<td BGCOLOR="#99CCFF">'.$tr.$td.'</td>

                                 <td id="sampleID" contenteditable="true">  sampleID</td>
                                 <td id="volume" contenteditable="true">  volume</td>'  ;
        }
    $out .= "</tr>";
    }

    $out .= "</table>";

echo $out; 
?>

目前表格在 3 列单元格中每次迭代生成 3 个单元格,

| coordinates | sample ID | volume |

我的问题涉及如何更改 php 代码以生成一个表格,其中坐标单元格可以排列为 sampleID 上的行跨度,体积单元格位于 2 行中,样本 ID 位于体积单元格上

|             | sample ID
| coordinates |------------
|             | volume

【问题讨论】:

  • 你为什么不在你的 td 里面做一个有两行的表格?
  • 这就是我尝试过但没有成功的方法

标签: php html-table


【解决方案1】:

试试这个,

for($tr='A';$tr<=$end_loc_alpha;$tr++)
    { $out .= "<tr>";
        for($td=1;$td<=$end_loc_number;$td++)
        { $out .= '<td BGCOLOR="#99CCFF">'.$tr.$td.'</td><td>
                                <table><tr style="border-bottom: 1px solid red">
                                 <td id="sampleID" contenteditable="true">  sampleID</td></tr>
                                <tr> <td id="volume" contenteditable="true">  volume</td></tr></table></td>'  ;
        }
    $out .= "</tr>";
    }

【讨论】:

    【解决方案2】:

    这对我有用

    <table>
        <tr>
            <td rowspan="2">test</td>
            <td>test1</td>
        </tr>
        <tr>
            <td>test2</td>
        </tr>
    </table>
    

    编辑:fiddle

    【讨论】:

    • 谢谢,但无论如何我询问的是代码而不是 HTML 本身 +1
    【解决方案3】:

    您可以在坐标 TD 上设置rowspan="2"

    你真的不应该那样构建你的输出。 试试这个方法:

    <?php
    
    $content = array(
        array(
            'cords' => 1,
            'samp' => "Bar",
            'vol' => 13
        ),
        array(
            'cords' => 2,
            'samp' => "Foo",
            'vol' => 456
        ),
        array(
            'cords' => 3,
            'samp' => "DJ",
            'vol' => 34
        )
    );
    
    ?>
    
    <table>
        <tbody>
            <? foreach($content as $key => $value) { ?>
            <tr>
                <th rowspan="2">Coordinates: <?= $value['cords'] ?></th>
                <td>sample ID: <?= $value['samp'] ?></td>
            </tr>
            <tr>
                <td>volume: <?= $value['vol'] ?></td>
            </tr>
            <? } ?>
        </tbody>
    </table>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-19
      • 2019-08-08
      • 2017-06-29
      • 1970-01-01
      • 2019-10-22
      • 2018-02-06
      • 1970-01-01
      • 2014-05-01
      相关资源
      最近更新 更多