IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Affichage et MySql


Sujet :

PHP & Base de données

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 6
    Points : 3
    Points
    3
    Par défaut Affichage et MySql
    Bonjour à tous!
    c'est mon premier post!

    J'ai une base de données qui contient des informations, comme un titre, une description, un logo, etc...

    Je veux afficher le tout en 3 colonnes et séparer pages par pages, ce que je veux dire, c'est que je dois ajuster le contenu pour qu'il fasse dans une page lors de l'impression.

    Je n'arrive pas à déterminer comment je vais savoir lorsque je serai au bout de ma page. À moins de donner des zones statiques pour chaque éléments (disons X pixels par élément et donc ca me prends X éléments pour une page) mais le problème, c'est qu'il y a des éléments qui n'auront pas d'images, d'autres pas de description, et donc la longueur est variable...

    Est-ce que quelqu'un a peut-être une solution, ou pourrait au pire me confirmer qu'il n'y a pas de moyen logique pour faire ça...

    Merci de votre temps!

  2. #2
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Bonjour et bienvenue sur developpez

    Comme à mon habitude je réponds par une question : ton problème se situe-t-il au niveau de l'affichage à l'écran (auquel cas, il te faut un système de pagination) ou au niveau de l'impression ?
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 6
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par Celira Voir le message
    Bonjour et bienvenue sur developpez

    Comme à mon habitude je réponds par une question : ton problème se situe-t-il au niveau de l'affichage à l'écran (auquel cas, il te faut un système de pagination) ou au niveau de l'impression ?
    Le problème est au niveau de l'impression.
    Nous voulons que le tout s'imprime sans couper au milieu du texte d'un élément.

    Merci pour la réponse en passant!

  4. #4
    Membre régulier Avatar de gantec
    Inscrit en
    Février 2007
    Messages
    225
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 225
    Points : 89
    Points
    89
    Par défaut
    à la fin de ton bloc d'affichage, tu peux utiliser un style CSS pour mettre automatique la suite du contenu sur une autre page...
    le style css :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    <p style="page-break-after:always;">
    a+
    .:: GanTec ::.
    Quand on espère rien de rien et qu'on gagne le paquet, ça c'est le destin

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 6
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par gantec Voir le message
    à la fin de ton bloc d'affichage, tu peux utiliser un style CSS pour mettre automatique la suite du contenu sur une autre page...
    le style css :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    <p style="page-break-after:always;">
    a+
    Je suis d'accord, mais là se situe le problème, quand est-ce que je sais que je dois mettre ce page break?

    Ce que je veux dire, c'est que je peux avoir pour jusqu'à 10 pages d'éléments à afficher, tous de différentes grandeurs, donc il devient difficile pour moi de calculer quand est-ce que je dois changer de page...

    Merci encore pour la réponse rapide!

  6. #6
    Membre régulier Avatar de gantec
    Inscrit en
    Février 2007
    Messages
    225
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 225
    Points : 89
    Points
    89
    Par défaut
    tu peux peut-etre utiliser la concatenation des variables ??
    par exemple :

    tu stock le resultat de ta requete dans ta variable $sql et ensuite tu fais $sql. = "<p style='page-break-after:always;'>"...

    je ne sais pas à voir (je ne connais pas énorme en PHP)..

    j'espere ke ca va t'aider..
    .:: GanTec ::.
    Quand on espère rien de rien et qu'on gagne le paquet, ça c'est le destin

  7. #7
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 6
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par gantec Voir le message
    tu peux peut-etre utiliser la concatenation des variables ??
    par exemple :

    tu stock le resultat de ta requete dans ta variable $sql et ensuite tu fais $sql. = "<p style='page-break-after:always;'>"...

    je ne sais pas à voir (je ne connais pas énorme en PHP)..

    j'espere ke ca va t'aider..

    Merci, mais non, ça ne règle pas mon problème puisque l'affichage sera toujours différent.

    Cependant j'ai mit des page-break-inside: avoid; page-break-before: avoid; et page-break-inside: after; aux endroits que j'ai voulu empêcher le tout de sauter de page.

    Le résultats n'est pas 100% bon, mais beaucoup mieux que s'il n'étaient pas là... donc pas un moyen php non plus.

  8. #8
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 778
    Points
    17 778
    Par défaut
    Citation Envoyé par dppls
    donc pas un moyen php non plus.
    Ce n'est pas en PHP que vous trouverez une solution : ce langage, interprété par le serveur avant d'envoyer le résultat de cette exécution au client, ne permet pas de gérer tous les aspects graphiques. Les solutions tourneront autour des langages HTML et CSS (et pourquoi pas Javascript) : question à poser dans les forums éponymes éventuellement.

    Un document PDF, pourrait en revanche être généré à partir de PHP mais c'est une autre histoire ...

Discussions similaires

  1. Affichage données MySQL
    Par gabs77 dans le forum W4 Express
    Réponses: 3
    Dernier message: 02/07/2008, 18h32
  2. [MySQL] Problème d'affichage avec Mysql
    Par Bathou dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 04/06/2008, 18h31
  3. [Tableaux] Affichage enregistrement MySQL
    Par youccef dans le forum Langage
    Réponses: 16
    Dernier message: 03/05/2007, 11h07
  4. [SGBD] pb affichage BDD mysql
    Par shelko dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 01/11/2005, 16h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo