Imprimer enregistrement par enregistrement

Eléphant du PHP | 125 Messages

24 mai 2006, 23:26

Bonjour,

Pour un soucis de compréhension je vais expliquer mon cas avec des images.

Page 1:
Image

Page2:
Image

Pour ma page 2 j'utilise une boucle do, while et mysql_fetch_assoc pour afficher mes adresses.

Voila j'aimerai imprimer adresse par adresse et non pas faire un truc grossier en jouant sur l'espace entre les adresses pour qu'elles se retouvent chacunes sur une enveloppe différente.

Je verrai bien

1)
Affichage de la première adresse puis impression sans confirmation puis effacement de la page
Affichage de la 2ème adresse puis impression sans confirmation puis effacement de la page
etc...
Et tout ceci automatiquement.

ou

2)Faire un saut de page pourqu'il y ait autant de page d'impression (et non de page internet) que d'adresse à imprimer.

Mais je sais pas du tout comment m'y prendre.

Merci d'avance.

Batti.
petit ou grand l'important c'est la référence

Mammouth du PHP | 19672 Messages

25 mai 2006, 08:48

Utilise un STYLE CSS en mentionnant le media print pour l'impression et ajoute des sauts de page : page-break-after ou page-break-before. Tu peux éventuellement insérer un <hr> entre chaque adresse avec un visibility: hidden pour ne pas l'afficher, mais ça peut te servir de repère tangible pour mettre ton saut de page.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 451 Messages

25 mai 2006, 10:47

En alternative à la solution à base de CSS que te propose Cyrano, tu peux regarder du côté de la librairie fpdf (http://www.fpdf.org/ pour générer un document PDF).

A toi de voir ce qui te convient le mieux...

Personellement, j'ai d'abord utilisé les CSS pour générer un format d'impression pour des formulaires d'inscription et depuis que j'ai découvert fpdf, je convertis tout en pdf, ça me pose beaucoup moins de problèmes de mise en page... (Mais ce n'est peut être pas un problème pour toi si c'est toi qui imprime et que tu es toujours sur la même station).
Jpaul
J'essaye d'aider : parfois je fais des erreurs, on me les corrige et j'apprends un peu plus. Super ce forum :)

Eléphant du PHP | 125 Messages

25 mai 2006, 17:23

Ca marche pas trop mal,

Dans ma page 2:
Je modifie mon body en:

Code : Tout sélectionner

<body onLoad="window.print()">
avant mon mysql_fetch_assoc:

Code : Tout sélectionner

<hr style="visibility:hidden; page-break-after:always">
Et dans ma page 1 un simple lien dans mon bouton.

J'aurais comme objectif de ne pas devoir affichier la page 2 pour l'imprimer, mais bon je verrais ça.

MERCI beaucoup ^^
petit ou grand l'important c'est la référence