SAUT DE PAGE
alicia_3107
Messages postés
4558
Statut
Membre
-
Utilisateur anonyme -
Utilisateur anonyme -
Dans le Menu de L'EI, Il existe une Option pour imprimer et une autre pour la mise en page (titre, bordure, format papier ...).
Sous PHP, j'ai écris un script qui affiche le contenu d'une table mysql. Cette table contient 100 enregistrements.
Le but c'est d'imprimer cette table sur une série de feuilles format A4. Une feuille format A4 pourra contenir environ 20 enregistrements (je l'ai testé)
Lorsqu'on imprime depuis l'EI, le tableau est tronqué certes mais l'impression continue sur la feuille suivante avec un tableau qui commence mal (ligne effécée) enfin bref ...
Je suppose donc que pour imprimer un tableau qui tient sur 5 feuilles, il faut afficher une suite des 5 parties du tableau séparées par "UN SAUT DE PAGE".
Ma question est :
----------------------------------------------------------------------------
> Existe-il une fonction (HTML ou PHP) qui exécute un saut de page, à l'endroit oû on le désire ?
----------------------------------------------------------------------------
</alicia_3107>
Sous PHP, j'ai écris un script qui affiche le contenu d'une table mysql. Cette table contient 100 enregistrements.
Le but c'est d'imprimer cette table sur une série de feuilles format A4. Une feuille format A4 pourra contenir environ 20 enregistrements (je l'ai testé)
Lorsqu'on imprime depuis l'EI, le tableau est tronqué certes mais l'impression continue sur la feuille suivante avec un tableau qui commence mal (ligne effécée) enfin bref ...
Je suppose donc que pour imprimer un tableau qui tient sur 5 feuilles, il faut afficher une suite des 5 parties du tableau séparées par "UN SAUT DE PAGE".
Ma question est :
----------------------------------------------------------------------------
> Existe-il une fonction (HTML ou PHP) qui exécute un saut de page, à l'endroit oû on le désire ?
----------------------------------------------------------------------------
</alicia_3107>
A voir également:
- Saut de page html
- Comment supprimer une page sur word avec un saut de page ? - Guide
- Editeur html - Télécharger - HTML
- Page d'accueil - Guide
- Imprimer tableau excel sur une page - Guide
- Saut de colonne word - Guide
4 réponses
Ayéééééééééé, J'ai trouvé :)
Toute seule comme une grande :(
Allez Jus d'orange pour tout le monde pour fêter l'évènement !
</alicia_3107>
Toute seule comme une grande :(
Allez Jus d'orange pour tout le monde pour fêter l'évènement !
</alicia_3107>
Bjr Alicia
... avec un zeste de Vodka pour corser le goût ;:-)
Alors comment tu fais pour les sauts de page en PHP ?
Ca peut intéresser du monde ...
@+
Philippe
[[ The Truth is Out There ]]
... avec un zeste de Vodka pour corser le goût ;:-)
Alors comment tu fais pour les sauts de page en PHP ?
Ca peut intéresser du monde ...
@+
Philippe
[[ The Truth is Out There ]]
Bonjour, tout le monde !
Au fait, la solution que j'ai trouvé est toute simple, elle se trouve dans le menu de IE (Version 5) !
Si vous regarder bien dans FICHIER, vous trouverez trois options réservée à l'impression
FICHIER.MISE EN PAGE ...
FICHIER.IMPRIMER ...
FICHIER.APERCU AVANT IMPRESSION ...
Prenons la cas suivant :
Je voudrai imprimer un tableau de 37 lignes sur des pages format A4. J'aimerai introduire un entête à ces pages ainsi qu'un numéro de page.
La première chose à faire c'est d'aller dans FICHIER.MISE EN PAGE ... pour spécifier les dimensions et les caractèristiques de nos pages (format, marge, source, orientation ...)
Ensuite, on exécute un test d'affichage de notre tableau tel qu'il est (37 lignes) sur la page "imprimer.php" avec éventuellement un fond blanc (feuille blanche).
Ensuite, nous devons aller dans FICHIER.APERCU AVANT IMPRESSION ... afin de voir (calculer) à quelle ligne il y a eu rupture (passage à la page suivante).
A l'issue de ces trois étapes, nous déduisons combien un feuille format A4 peut contenir de lignes, supposons 30 lignes.
Donc, on conclus qu'aprés chaque 30 lignes, il doit y avoir une rupture, nous devons passer à la page suivante en redessinant l'entête et en incrémentant une variable initialisée à 1 et qui sert à indiquer le numéro de page.
Voilà !
Le schéma général de l'algorithme est à peut prés comme ceci :
----------------------------------------------------------------------------<?
//...
$con = odbc_connect ($odbc_Source, $odbc_User, $odbc_Passw);
$res = odbc_exec ($con, $hreq);
$taille = odbc_num_rows ($res);
include ("entete_page.php");
$page = 1;
$lig = 1;
echo "<table border='1' bordercolor='black' cellspacing='0' cellpadding='0' width='600' align='center'>";
while ($enrg = odbc_fetch_into ($res, $col, &$arr)) {
foreach ($arr as $elem) {
echo "<td align='center'><font size='-1'>$elem</td>";
}
if ($lig == 30) {
$page++;
echo "</table>";
echo "<br><br><br><br><br>";
include ("entete_page.php");
}
$lig++;
}
echo "</table>";
//...
}?>
----------------------------------------------------------------------------
Ainsi, le résultat est un tableau de 37 lignes réparti sur deux pages A4 avec chacune un entête et un numéro de page spécifique (1 puis 2). Il y a 30 ligne du tableau sur la première page et 7 lignes sur la deuxième.
Je ne sais pas s'il existe d'autres solutions (notamment des fonctions pour le saut de page) vous avez constaté que j'utilise un certain nombre de <br> pour passer d'un page à une autre ! En tout cas ça a marché pour moi :)
</alicia_3107>
Au fait, la solution que j'ai trouvé est toute simple, elle se trouve dans le menu de IE (Version 5) !
Si vous regarder bien dans FICHIER, vous trouverez trois options réservée à l'impression
FICHIER.MISE EN PAGE ...
FICHIER.IMPRIMER ...
FICHIER.APERCU AVANT IMPRESSION ...
Prenons la cas suivant :
Je voudrai imprimer un tableau de 37 lignes sur des pages format A4. J'aimerai introduire un entête à ces pages ainsi qu'un numéro de page.
La première chose à faire c'est d'aller dans FICHIER.MISE EN PAGE ... pour spécifier les dimensions et les caractèristiques de nos pages (format, marge, source, orientation ...)
Ensuite, on exécute un test d'affichage de notre tableau tel qu'il est (37 lignes) sur la page "imprimer.php" avec éventuellement un fond blanc (feuille blanche).
Ensuite, nous devons aller dans FICHIER.APERCU AVANT IMPRESSION ... afin de voir (calculer) à quelle ligne il y a eu rupture (passage à la page suivante).
A l'issue de ces trois étapes, nous déduisons combien un feuille format A4 peut contenir de lignes, supposons 30 lignes.
Donc, on conclus qu'aprés chaque 30 lignes, il doit y avoir une rupture, nous devons passer à la page suivante en redessinant l'entête et en incrémentant une variable initialisée à 1 et qui sert à indiquer le numéro de page.
Voilà !
Le schéma général de l'algorithme est à peut prés comme ceci :
----------------------------------------------------------------------------<?
//...
$con = odbc_connect ($odbc_Source, $odbc_User, $odbc_Passw);
$res = odbc_exec ($con, $hreq);
$taille = odbc_num_rows ($res);
include ("entete_page.php");
$page = 1;
$lig = 1;
echo "<table border='1' bordercolor='black' cellspacing='0' cellpadding='0' width='600' align='center'>";
while ($enrg = odbc_fetch_into ($res, $col, &$arr)) {
foreach ($arr as $elem) {
echo "<td align='center'><font size='-1'>$elem</td>";
}
if ($lig == 30) {
$page++;
echo "</table>";
echo "<br><br><br><br><br>";
include ("entete_page.php");
}
$lig++;
}
echo "</table>";
//...
}?>
----------------------------------------------------------------------------
Ainsi, le résultat est un tableau de 37 lignes réparti sur deux pages A4 avec chacune un entête et un numéro de page spécifique (1 puis 2). Il y a 30 ligne du tableau sur la première page et 7 lignes sur la deuxième.
Je ne sais pas s'il existe d'autres solutions (notamment des fonctions pour le saut de page) vous avez constaté que j'utilise un certain nombre de <br> pour passer d'un page à une autre ! En tout cas ça a marché pour moi :)
</alicia_3107>