Comment créer plusieurs pages avec dompdf
Je vais avoir quelques problèmes avec tableau multidimensionnel et sa valeur.
Ce que je suis à la recherche est , à partir de ma requête, je suis à la recherche d'enseignants nom dans le tableau. Et après que j'ai envie de créer un fichier pdf à l'aide de dompdf. Le problème est avec le bouclage. Je ne suis pas en mesure de créer une bonne boucle qui va travailler de la façon dont je veux travailler. Mon exemple de requête est
$q11 = "select id from teachers order by teacher ";
$r11 = mysql_query($q11) or die(mysql_error());
while($rows11 = mysql_fetch_array($r11)){
$teacher = $rows11['id'];
$dompdf->"It will start working";
}
Maintenant, je sais , ce code est déroutant, mais ce que je veux dire, c'est qu'il doit créer dompdf pour chaque enseignant dans un seul fichier pdf. Comme à partir de la requête, il doit extraire les enseignants, et pour chaque enseignant de créer un dompdf page. Actuellement, il est seulement une page en fonction de la dernière valeur que ma requête de recherche.
S'il vous plaît aider. C'est un peu urgent.
Sonne comme il n'est pas un problème avec un tableau multidimensionnel ou en boucle mais avec une bonne
$dompdf
d'utilisation.OriginalL'auteur I Perfect | 2012-12-30
Vous devez vous connecter pour publier un commentaire.
Votre boucle fonctionne bien. La façon dont vous ajoutez des pages de votre fichier PDF est probablement faux. Apparemment, vous l'écrasez une page encore et encore au lieu de fixer un nouveau.
MODIFIER
Je n'ai jamais utilisé dompdf. Un regard rapide sur les docs m'ont laissé penser que vous créez quelque chose comme une balise HTML qui est ensuite converti en PDF, je n'ai pu obtenir ce droit?
Exemple de code
Si vous vous demandez à propos de la syntaxe inhabituelle
$var = <<<HTML \r\nHTML
, c'est un heredoc. C'est juste plus confortable à utiliser heredocs quand vous avez beaucoup d'alien de code en ligne, ce qui peut avoir des variables{$varname}
et vous n'avez pas besoin de s'inquiéter à propos de citations. Tout ce que vous devez vous assurer, c'est que heredoc plus procheHTML
est dans une nouvelle ligne et pas en retrait.EDIT2
Pas encore trop sûr de, de la bibliothèque que vous utilisez. Je trouve cette extension très bon et il est appelé dompdf, juste comme vous l'avez dit dans votre question.
Votre dernier commentaire indique que vous ne parvenez pas à résoudre votre problème jusqu'à présent, j'ai donc décidé d'ajouter un peu plus d'informations pour vous rendre à la cible.
dompdf est capable de lire CSS2 et CSS3 propriétés de votre document d'entrée.
Chaque cycle dans le
while
boucle ci-dessus représente un professeur avec chacun d'entre eux d'obtenir un propre page dans le document de sortie.J'ai mis la page dans un conteneur div avec la classe
teacherPage
. Vous pouvez remplir ce récipient avec toutes les informations que vous souhaitez afficher pour un enseignant.Maintenant tout ce que nous devons faire, c'est à dire dompdf chaque
teacherPage
est une nouvelle page. Cela peut être fait en utilisant@page
balisage livré avec CSS3J'ai ajouté un vide css contenant
<style type="text/css"></style>
pour le document de l'exemple ci-dessus, c'est là que la page de style devrait aller.L'exemple de CSS
Avec
@page
vous pouvez définir un nom de pageteacher
, qui peuvent avoir des propriétés valables pour l'ensemble du conteneur de page.page-break-after: always
va commencer une nouvelle page après chaque conteneurEspère que cette aide, amusez-vous à essayer 🙂
Il devrait être expliqué dans le manuel quelque soit le pdf de la bibliothèque que vous utilisez.
ajout d'un css exemple pour vous, espérons que cette aide
Merci. Il a aidé
Excellente approche.. je voulais aussi créer plusieurs formes différentes sous un format Pdf pour les Imprimer... Cette solution m'a aidé dans Dompdf. Merci beaucoup.
OriginalL'auteur Michel Feldheim
Apparemment pas de problèmes de dépassement et les résultats prennent de plus que le permis de la marge de la feuille, vous pouvez faire est de séparer les données de la société mère dans un autre tableau et le mettre entre eux:
OriginalL'auteur Walter Caraza