Сценарий: я собираюсь извлечь некоторые данные из базы данных и вывести их через pdf. Я использую FPDF
, чтобы сделать это, и я нахожусь на той части, где мне нужно получить высоту из базы данных и отобразить ее в соответствии с цветом.
Например:
- Если высота равна 2-3 метра , то цвет должен быть коричневый
- Если высота составляет 1-2 метра , то цвет должен быть желтый
- Если высота <1 метр </strong>, то цвет должен быть синий
МОЯ ПРОБЛЕМА Я пытаюсь вставить switch case
в while loop
, чтобы поместить height в таблицу, где отображаются некоторые другие данные. На рисунке ниже показано, где я хочу реализовать цветные ячейки . Это должно быть реализовано в столбце «Высота SS».
Но это не сработало и дало мне эту ошибку.
Это мои коды.
<?php
require('connection.php');
$sql="SELECT * FROM table ORDER BY ssh REGEXP '^[^A-Za-z0-9]' ASC, ssh DESC";
$records=mysql_query($sql);
$fetch = mysql_fetch_array($records);
require("library/fpdf.php");
$pdf = new PDF('p', 'mm', 'Legal');
$title = 'Storm Surge Warning';
$pdf->SetTitle($title);
$pdf->AliasNbPages('{pages}');
$pdf->SetAutoPageBreak(true,25);
$pdf->AddPage();
$pdf->SetBorders(array('LT', 'LT', 'LT', 'LT', 'TLR'));
$pdf->SetWidths(array(30, 27, 35, 51, 51));
$pdf->SetAligns(array('C', 'C', 'C', 'L', 'L'));
$pdf->SetFont('Arial', 'B', 10);
$pdf->Row(array("SS Height",
"Provinces",
"Low Lying Coastal Areas in the Municipalities of:",
"IMPACTS",
"ADVICE/Actions to Take"), 1);
$pdf->SetFont('Arial', '', 11);
while($row = mysql_fetch_array($records)){
$pdf->Row(array(
switch ($row['ssh']) {
case '2-3Meters' :
$pdf->SetFillColor(204, 153, 0);
$pdf->Cell($row['ssh'], 1, 1, 'L', TRUE);
break;
case '1-2Meters' :
$pdf->SetFillColor(255, 255, 0);
$pdf->Cell($row['ssh'], 1, 1, 'L', TRUE);
break;
case '<1Meter' :
$pdf->SetFillColor(51, 153, 255);
$pdf->Cell($row['ssh'], 1, 1, 'L', TRUE);
break;
default:
$pdf->Cell($row['ssh'], 1, 1, 'L', FALSE);
break;
}
$row['provi'],
$row['muni'],
$row['impact'],
$row['advice']), 1);
}
$pdf->SetBorders(array('T', 'T', 'T', 'T', 'T'));
$pdf->Row(array('','','','',''), 1, false, 1);
$pdf->OutPut();
?>