1

Anyone can help me generating pdf using MPDF for the following code.

<table width="360" height="161" border="1" class="tablestyle">
<tr>
<td height="36" colspan="5" bgcolor="#ECE9D8"><div align="center" class="style6">ACADEMIC PERFORMANCE - <br />
UNIT TEST</div></td>
</tr>
<tr>
<td width="89"><div align="center" class="style3 style8">SUBJECTS</div></td>
<td width="73"><div align="center" class="style9">No. Of Tests</div></td>
<td width="82"><div align="center" class="style9">Mark Obtained</div></td>
<td width="82"><div align="center" class="style9">Full Mark</div></td>
<td width="88"><div align="center" class="style9">12.5% of <br />Mark Scored</div></td>
</tr>
<?php do { ?>
<tr>
<td><span class="style7">&nbsp;<?php echo $row_dep['Subject'];?></span></td>
<td><div align="center"><?php echo $row_dep['times'];?></div></td>
<td><div align="center"><?php echo $row_dep['score'];?></div></td>
<td><div align="center"><?php echo $row_dep['fm'];?></div></td>
<td><div align="center"><?php echo  number_format($row_dep['score']/$row_dep['fm']*12.5,2); ?></div></td>
</tr>
<?php } while ($row_dep = mysql_fetch_assoc($dep)); ?>
<tr>
<td bgcolor="#ECE9D8"><div align="center"><strong>Total</strong></div></td>
<td bgcolor="#ECE9D8"><div align="center"><?php echo $row_exe['ex'];?></div></td>
<td bgcolor="#ECE9D8"><div align="center"><?php echo $row_unit['utotal'];?></div></td>
<td bgcolor="#ECE9D8"><div align="center"><?php echo $row_unfm['ufm'];?></div></td>
<td bgcolor="#ECE9D8"><div align="center"><strong><?php echo number_format($row_unit['utotal']/$row_unfm['ufm']*12.5,2); ?></strong></div></td>
</tr>
<tr>
<td colspan="2"><div align="right"><strong>Grade:</strong></div></td>
<td><div align="center"><strong><?php 
$div=$row_unit['utotal']/$row_unfm['ufm']*100;
if  ($div>=90)
{
echo "A1";
}
    elseif($div>=80)
{
echo "A2"; 
}
elseif($div>=70)
{
    echo "B1"; 
}
elseif($div>=60)
{
    echo "B2"; 
}
elseif($div>=50)
{
    echo "C1"; 
}
elseif($div>=40)
{
echo "C2"; 
}
elseif($div>=33)
{
echo "D"; 
}
elseif($div>=21)
{
echo "<font color=red>E1</font>"; 
}            
else
{
    echo "<font color=red>E2</font>"; 
}
?></strong></div></td>
<td><strong><div align="center">Percentage</strong></div></td>
<td><strong><div align="center">
<?php
echo number_format($row_unit['utotal']/$row_unfm['ufm']*100,2);
?>%
</strong></div></td>
</tr>
</table>

I want to put the above table inside $html, I have been trying with some samples given in the MPDF manual but could not figure out how to output. For example, for printing <?php echo $row_dep['Name_of_Student'];?> in $HMTL I know that I can use '.$row_dep['Name_of_Student'].' but when it comes to generating rows as I have here in between <?php do { ?> and <?php } while ($row_dep = mysql_fetch_assoc($dep)); ?> I don't know and could not produce the desired output.

4
  • 1
    Have you looked at output buffering (see ob_start())? Commented Jul 6, 2013 at 17:02
  • 1
    @cimmanon No, I have no idea how to use ob_start(). I am new to php. Can this be done without using ob_start()) function? As MPDF does not allow to use <?php echo inside $html, I want to know how I can output the above script in PDF using MPDF. Commented Jul 6, 2013 at 17:38
  • @cimmanon ob_start() does not work with the above code. Commented Jul 7, 2013 at 5:35
  • 1
    After two days I could solved my problem. It works with ob_start in combination with include. Commented Jul 7, 2013 at 17:58

1 Answer 1

3

Here is how this can be done...

<?php 
include("mpdf.php");

ini_set('memory_limit','3000M');//extending php memory
$mpdf=new mPDF('win-1252','A4-L','','',15,10,16,10,10,10);//A4 size page in landscape orientation
$mpdf->SetHeader('Put your header here');
$mpdf->setFooter('{PAGENO}');
$mpdf->useOnlyCoreFonts = true;    // false is default
//$mpdf->SetWatermarkText("any text");
//$mpdf->showWatermarkText = true;
//$mpdf->watermark_font = 'DejaVuSansCondensed';
//$mpdf->watermarkTextAlpha = 0.1;
$mpdf->SetDisplayMode('fullpage');
$mpdf->SetWatermarkImage('logo.png');
$mpdf->showWatermarkImage = true;


// Buffer the following html with PHP so we can store it to a variable later
ob_start();
?>
<?php include "yourphp.php";//The php page you want to convert to pdf
 // asasas?>

<?php 
$html = ob_get_contents();

ob_end_clean();

// send the captured HTML from the output buffer to the mPDF class for processing

$mpdf->WriteHTML($html);
//$mpdf->SetProtection(array(), 'mawiahl', 'password');//for password protecting your pdf

$mpdf->Output();
exit;
?>
Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.