создать динамический счет-фактуру, используя mpdf

MPDF

$html='
<body>
<div id="page">
  <div id="logo">
    <a href="http://www.danifer.com/"><img src="./HTML Invoice Template_files/invoice_logo.jpg"></a>
  </div><!--end logo-->

  <div id="address">

    <p><strong>'.$company.'</strong><br>
    <a href="mailto:'.$dbobj->getAdminEmail().'">'.$dbobj->getAdminEmail().'</a>
    <br><br>
    Transaction # xxx<br>
    Created on 2008-10-09<br>
    </p>
  </div><!--end address-->

  <div id="content">
    <p>
      <strong>Customer Details</strong><br>
      Name: '.$dbobj->UserFullName().'<br>
      Email: '.$dbobj->UserEmail().'<br>
      Contact: '.$dbobj->UserContact().'<br>
      Payment Type: MasterCard    </p>
    <hr>

    <table>
      <tbody>
        <tr>
        <td><strong>Description</strong></td>
        <td><strong>Qty</strong></td>
        <td><strong>Unit Price</strong></td>
        <td><strong>Amount</strong></td>
        </tr>
      <tr class="odd">
        <td>Product 1</td>
        <td>1</td>
         <td>Rs 1495.00</td>
        <td>Rs 1495.00</td>

      </tr>
      <tr class="even">
        <td>Product 2</td>
        <td>1</td>
       <td>Rs 1495.00</td>
        <td>Rs 1495.00</td>
      </tr>
        <tr class="odd">
          <td>Product 3</td>
          <td>1</td>
         <td>Rs 1495.00</td>
        <td>Rs 1495.00</td>
        </tr>

        <tr>
          <td>&nbsp;</td>
          <td>&nbsp;</td>
          <td><strong>Total</strong></td>
          <td><strong>Rs 24485.00</strong></td>
        </tr>

    </tbody></table>


    <hr>
    <p>
      Thank you for your order.<br>
      If you have any questions, please feel free to contact us at <a href="mailto:'.$dbobj->getAdminEmail().'">'.$dbobj->getAdminEmail().'</a>.
    </p>

    <hr>
    <p>
      </p><center><small>This communication is for the exclusive use of the addressee and may contain proprietary, confidential or privileged information. If you are not the intended recipient any use, copying, disclosure, dissemination or distribution is strictly prohibited.
      <br><br>
      © '.$dbobj->sitename.' All Rights Reserved
      </small></center>
    <p></p>
  </div><!--end content-->
</div>
</body>;

Пожалуйста, я уже внедрил библиотеку mpdf на веб-сайт.
Теперь я хочу создать динамические PDF-файлы для счета-фактуры.
как создать динамическую таблицу для переменной $html? затем я должен передать его WriteHTML()

 $mpdf->WriteHTML($html);

Затем я вызову $mpdf->Output('downloads/application.pdf','F'); скачать pdf

ЧАСТЬ SQL

select desc,qty,price,total from orders where productid=1

ЧАСТЬ PHP

$mpdf=new mPDF();
$mpdf->SetDisplayMode('fullpage');
$mpdf->WriteHTML($html);
$mpdf->Output('downloads/application.pdf','F'); 

я использую mysql


person dinu1389    schedule 31.08.2014    source источник
comment
Что вы имеете в виду под динамическим? Вы используете форму, которую пользователи заполняют, чем отображают PDF или какую-то структуру базы данных?   -  person HddnTHA    schedule 31.08.2014
comment
мне нужно построить таблицы из базы данных.   -  person dinu1389    schedule 31.08.2014
comment
Делайте запросы к БД и выводите их в переменную $html. Кстати, ваш вопрос неясен. Мы не можем помочь вам с меньшим количеством деталей.   -  person HddnTHA    schedule 31.08.2014
comment
какие детали вы хотите, я опубликую здесь, и, пожалуйста, покажите мне, как построить таблицу в переменной html   -  person dinu1389    schedule 31.08.2014
comment
Покажите свою php-сторону и sql-запросы для печати в pdf.   -  person HddnTHA    schedule 31.08.2014
comment
Давайте продолжим обсуждение в чате.   -  person dinu1389    schedule 31.08.2014
comment
Я не могу общаться в чате, извините. Я отвечу на ваш вопрос.   -  person HddnTHA    schedule 31.08.2014
comment
кк буду ждать твоего ответа   -  person dinu1389    schedule 31.08.2014
comment
Не могли бы вы показать свою php-сторону подключения к базе данных? Вы используете pdo или mysqli?   -  person HddnTHA    schedule 31.08.2014


Ответы (1)


У меня просто есть мобильный телефон, чтобы написать это, поэтому код может быть не идеальным.

Используйте цикл foreach для повторения результатов запроса и создания строки $htmlRows. Вы не показали нам свою php-команду для запроса и переменную результата. Поэтому я предполагаю, что $rows — это массив записей.

$htmlRows = "";
foreach($rows as $row) {
    $htmlRows .= "
        </tr>
        <tr class="even">
        <td>".$row->desc."</td>
        <td>".$row->qty."</td>
        <td>Rs ".$row->price."</td>
        <td>Rs ".$row->total."</td>
        </tr>
    ";
}

Сделайте этот цикл, прежде чем генерировать $html.

Затем, когда вы присваиваете код $html, просто замените все нединамические строки на

$html = " ....
    .....</tr>" 
    . $htmlRows 
    . "<tr>...."
;
person Uwe Heim    schedule 31.08.2014
comment
я должен добавить, как это правильно? $html = .... .....‹/tr› . $htmlстроки . ‹тр›.... ; - person dinu1389; 31.08.2014
comment
Конечно, .... - это просто заменители того, что вы уже имели до того, как спросили. Надеюсь, теперь вы разберетесь сами. - person Uwe Heim; 31.08.2014