FPDF отображает данные из базы данных вне таблицы - PullRequest
0 голосов
/ 25 марта 2019

Я повторно публикую свой вопрос , чтобы он получил больше аудитории. Похоже, что другие не видят этого, так как я опубликовал это на прошлой неделе.

Я отображаю данные снаружи и внутри таблицы. Когда я попытался вызвать данные внутри таблицы, они отлично работают, но всякий раз, когда я вызываю их снаружи, они внезапно не отображаются. Эта часть прямо здесь ...

$pdf->MultiCell(194,4,"STORM SURGE INFORMATION",0,'C', false);
$pdf->Cell(191,4,"STORM SURGE: WARNING # ",0,0,'C');
$pdf->Cell(-136,4,$fetch['warning'],0,1,'C');

$pdf->Cell(172,4,"FOR: TYPHOON ",0,0,'C');
$pdf->Cell(-119,4,$fetch['typhoon'],0,1,'C');

$pdf->Cell(175,4,"ISSUED AT ",0,0,'C');
$pdf->Cell(-135,4,$fetch['date'],0,1,'C');

Мой PDF в настоящее время выглядит следующим образом.

enter image description here

Может ли кто-нибудь помочь мне выяснить, что не так или отсутствует в моих кодах?

<?php

require("con.php");

$sql="SELECT * FROM table ORDER BY ssh REGEXP '^[^A-Za-z0-9]' ASC, ssh DESC";

$records=mysql_query($sql);
$fetch = $records[0];

require("library/fpdf.php");

class PDF extends FPDF{
  function Header(){
  }
  function Footer(){
  }
}

$pdf = new PDF('p', 'mm', 'Legal');
$title = 'Storm Surge Warning';
$pdf->SetTitle($title);
$pdf->AliasNbPages('{pages}');
$pdf->SetAutoPageBreak(true,40);

$pdf->AddPage();
$pdf->Ln();

$pdf->SetFont('Arial', 'B', 10);

$pdf->MultiCell(194,4,"STORM SURGE INFORMATION",0,'C', false);
$pdf->Cell(191,4,"STORM SURGE: WARNING # ",0,0,'C');
$pdf->Cell(-136,4,$fetch['warning'],0,1,'C');

$pdf->Cell(172,4,"FOR: TYPHOON ",0,0,'C');
$pdf->Cell(-119,4,$fetch['typhoon'],0,1,'C');

$pdf->Cell(175,4,"ISSUED AT ",0,0,'C');
$pdf->Cell(-135,4,$fetch['date'],0,1,'C');

$pdf->Ln(1);

$pdf->SetBorders(array('LT', 'LT', 'LT', 'LT', 'TLR'));
$pdf->SetWidths(array(25, 27, 35, 54, 53));
$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($row['ssh'],
  $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();
?>

1 Ответ

1 голос
/ 26 марта 2019

Вы пытаетесь использовать отрицательное значение X-Position.Надеюсь, поэтому он не работает.

Вы хотите что-то вроде ниже:

Пример

Использовать лимит для получения последней записи

$sql="SELECT * FROM twothree ORDER BY ssh REGEXP '^[^A-Za-z0-9]' ASC, ssh DESC LIMIT 1";
//echo $sql;
$records=mysql_query($sql);
if (mysql_num_rows($records)) {
 $fetch = mysql_fetch_assoc($records);
}

$pdf->Ln(10);
$pdf->Cell(194, 4,"STORM SURGE: WARNING # " . $fetch['warning'], 0,0,'C');
$pdf->Ln();
$pdf->Cell(194, 4,"FOR: TYPHOON " . $fetch['typhoon'],0,0,'C');
$pdf->Ln();
$pdf->Cell(194,4,"ISSUED AT " . $fetch['date'],0,0,'C');
$pdf->Ln();

$pdf->Ln(20);

Пример

$pdf->Cell(60, 4,"", 0,0,'C');
$pdf->Cell(60, 4,"STORM SURGE: WARNING # :", 0,0,'L');
$pdf->setX(125);    
$pdf->Cell(60, 4,$fetch['warning'], 0,0,'L');
$pdf->Ln();
$pdf->Cell(60, 4,"", 0,0,'C');
$pdf->Cell(60, 4,"FOR: TYPHOON :", 0,0,'L');
$pdf->setX(100);    
$pdf->Cell(60, 4,$fetch['typhoon'], 0,0,'L');
$pdf->Ln();
$pdf->Cell(60, 4,"", 0,0,'C');
$pdf->Cell(60, 4,"ISSUED AT : ", 0,0,'L');
$pdf->setX(100);    
$pdf->Cell(60, 4,$fetch['date'], 0,0,'L');
$pdf->Ln();

MainЗапрос

$sql="SELECT * FROM twothree ORDER BY ssh REGEXP '^[^A-Za-z0-9]' ASC, ssh DESC";
//echo $sql;
$records=mysql_query($sql);
...