SAUT DE PAGE

Fermé
alicia_3107 Messages postés 4546 Date d'inscription lundi 8 octobre 2001 Statut Membre Dernière intervention 17 février 2015 - 10 mars 2002 à 14:56
 Utilisateur anonyme - 29 mars 2002 à 16:40
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>
A voir également:

4 réponses

alicia_3107 Messages postés 4546 Date d'inscription lundi 8 octobre 2001 Statut Membre Dernière intervention 17 février 2015 6
28 mars 2002 à 09:17
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>
1
PhP Messages postés 1767 Date d'inscription lundi 11 décembre 2000 Statut Membre Dernière intervention 23 décembre 2009 606
28 mars 2002 à 09:38
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   ]]
0
Utilisateur anonyme
28 mars 2002 à 13:50
vi comment tu fais dis?

kinder.surprise,
le maton du matou
0
alicia_3107 Messages postés 4546 Date d'inscription lundi 8 octobre 2001 Statut Membre Dernière intervention 17 février 2015 6
29 mars 2002 à 11:01
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>
0
Utilisateur anonyme
29 mars 2002 à 11:30
merci m'zelle! (-:

kinder.surprise,
le maton du matou
0
alicia_3107 Messages postés 4546 Date d'inscription lundi 8 octobre 2001 Statut Membre Dernière intervention 17 février 2015 6 > Utilisateur anonyme
29 mars 2002 à 14:18
OH ! Mais de rien mon CHOCOLAT à moi

</alicia_3107>
0
Utilisateur anonyme > alicia_3107 Messages postés 4546 Date d'inscription lundi 8 octobre 2001 Statut Membre Dernière intervention 17 février 2015
29 mars 2002 à 16:40
ça y est je vais fondre...

kinder.surprise,
fondu
0