2015-02-13 3 views
-2

я должен построить HTML таблицу, которая будет выглядеть следующим образом: enter image description hereЗаполните HTML таблицу с результатом базы данных

Но поля и имена головы я получаю из базы данных. Первый запрос - возвращает описание полей, второй запрос возвращает значения полей. Я потратил много времени, пытаясь достичь этого. Итак, что я делаю:

<table> 
<tbody> 
<?php 
foreach ($comments as $comment) { // $comments is array of strings      
?> 
    <td><b><?= $comment ?></b></td> 
<?php}?> 
</tbody> 
<?php 
    foreach ($field_names as $fn) { // $field_names is array_keys($result) 
    ?><tr><?php 
    foreach ($result as $r) { // $result - values of fields       
    ?> 
    <td><?= $r[$fn] ?></td> 
    <?php 
    }?> 
</tr> 
<?php 
} 
?></table> 

Но таким образом я получаю свой контент транспонированным. Любая помощь, спасибо.

+0

просьба привести пример как выглядит ваш массив; что означает содержимое '$ comments',' $ fieldnames'. и '$ result' – CodeGodie

+0

Я показал это на изображении в моем вопросе – Daria

+0

, как выглядит ваш переменный' $ result'? это просто массив строк? – CodeGodie

ответ

0

нормально, так как вы штрафной обеспечивают изменяющуюся информацию, я буду считать следующее, и если да, то этот код должен работать для вас:

<?php 
    $comments = ["comm1", "comm2", "comm3"]; // $comments is array of strings 

    $field_names = array(
     0 => "fv1", 
     1 => "fv2", 
     2 => "fv3" 
    ); // $field_names is array_keys($result) 

    $result = ["value1", "val2", "val3"]// $result - values of fields 
    ?> 
    <table> 
     <thead> 
      <tr> 
       <?php foreach ($comments as $comment) { ?> 
        <th><b><?= $comment ?></b></th> 
       <?php } ?> 
      </tr> 
     </thead> 
     <tbody> 
      <tr> 
       <?php foreach ($field_names as $k => $v) { ?> 
        <td><?= $result[$k] ?></td> 
       <?php } ?> 
      </tr> 
     </tbody> 
    </table> 

UPDATE:

<style> 
    .tbl_hdr{ 
     font-weight: bold; 
    } 
</style> 
<?php 
$comments = ["comm1", "comm2", "comm3"]; // $comments is array of strings 
$field_names = array(
    0 => "fv1", 
    1 => "fv2", 
    2 => "fv3" 
); // $field_names is array_keys($result) 

$result = ["value1", "val2", "val3"]// $result - values of fields 
?> 
<table> 
    <?php foreach ($field_names as $k => $v) { ?> 
     <tr> 
      <td class="tbl_hdr"><?= $comments[$k] ?></td> 
      <td><?= $result[$k] ?></td> 
     </tr> 
    <?php } ?> 
</table> 
+0

, так это сработало? – CodeGodie

+0

Спасибо, но я должен помещать 'head' поля как' column' не как 'row' – Daria

+0

ohh, я вижу .. Я скоро сделаю некоторые изменения. – CodeGodie

Смежные вопросы