0

生成された html テーブルを確認できますが、定義した「一致」と呼ばれる CSS クラスに基づいて行が強調表示されませんか? 私の目標は、SQL クエリで定義されているように、一致条件を満たす各行を強調表示することです。matchエラーは、PHP ではなく SQL クエリで定義されている変数に関係していると思いますか?

<?php
require_once 'config.php';

$dbh = new PDO($dsn, $dbuser, $dbpass);

$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$dbh->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);

$result = $dbh->query("
    SELECT a_aif.aif_id,
      a_aif.fee_source_id,
      a_aif.company_name_per_sedar,
      a_aif.document_filing_date,
      IF (a_aif_remaining.aif_id IS NULL, 0, 1) `match`
    FROM  a_aif
      LEFT JOIN a_aif_remaining
        ON a_aif_remaining.aif_id = a_aif.aif_id
    ORDER BY aif_id DESC");

$result->setFetchMode(PDO::FETCH_ASSOC);

if ( !empty($result) ) : endif;

?>

<table>
<tr>
    <th><b>Document ID</b></th>
    <th><b>Pubco Name</b></th>
    <th><b>Filing Date</b></th>
    <th><b>PDF</b></th>
</tr>

<?php foreach($result as $index => $row) : ?>
<tr class="<?=$v["match"] ? "match" : ""?>">
    <td><?php echo $row[fee_source_id]; ?></td>
    <td><?php echo $row[company_name_per_sedar]; ?></td>
    <td><?php echo $row[document_filing_date]; ?></td>
    <td></td>
</tr>
<?php endforeach;
$dbh = NULL;
?>
</table>
4

0 に答える 0