PHP HTML2PDF - Je Tabelle eine Seite nutzen?

Dsimon24

Lieutenant
Registriert
Aug. 2016
Beiträge
595
Moin zusammen,

ich nutze seit einiger Zeit HTML2PHP und möchte damit viele personenbezogene Tabellen untereinander bringen.
Bisher funktioniert es so, dass jeweils drei Tabellen auf einer Seite untergebracht sind. Passt die vierte nicht mehr
auf die Seite, so wird für die jeweils gesamte Tabelle die jeweils nächste Seite verwendet.

Jetzt möchte ich aber eine Tabelle je Seite haben. Für mich sieht der Code so aus, als müsste es bereits
funktionieren. Allerdings funktioniert in dieser Code-Version nur der obige Teil (mehrere Tabellen auf
einer Seite). Was mache ich hier falsch?

PHP:
  $i = 0;

  foreach($stmt_reg1 as $reg1) {
    
    $i++;

    $page[$i] = <<<HTMLcode
    <div>
      
      <table> <!-- stark verkürzte Version zur Demo -->
        <col width="125">
        <col width="407">
        <tr>
          <th>Anmerkungen</th>
          <td>$nltext</td>
        </tr>
      </table>

    </div>   
    HTMLcode;
    
  }

    $html2pdf = new HTML2PDF('P', 'A4', 'de', true, 'UTF-8', array(25, 15, 25, 15));

    for ($p = 0; $p < 100; $p++) { //PDF
      
      $html2pdf->writeHTML($page[$p]);

    }

VG, David
 
Ich kenne die Syntax von htlm2pdf nicht, aber wo in deinem Code wird denn definiert, dass eine neue Seite für jede Tabelle generiert werden soll?
 
Über dem HTML-Code speichere ich diesen in die Variable $page[$i].
Diese gebe ich dann in einer for-Schleife ($page[$p]) aus, um die
jeweiligen Seiten zu erstellen.
 
So wie es aussieht, erzeugt HTML2PDF->writeHTML eben nicht für jeden (Funktions-)Aufruf eine neues Blatt, sondern schreibt am bestehenden Dokument einfach weiter. Da musst du mal die Doku von HTML2PDF lesen und schauen, ob es einen entsprechenden Schalten gibt, der einen Seitenumbruch erzwingt.
 
Du muss deinen HTML-Code in <page> </page> Tags packen. Dadurch weiß der Interpreter, dass das eine eigenständige Seite sein soll.
 
Zurück
Oben