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

Langage PHP Discussion :

Pagination dynamique en fonction du nombre de lignes dans un fichier parsé


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Homme Profil pro
    Padawan PHP
    Inscrit en
    Mars 2018
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Padawan PHP

    Informations forums :
    Inscription : Mars 2018
    Messages : 17
    Points : 11
    Points
    11
    Par défaut Pagination dynamique en fonction du nombre de lignes dans un fichier parsé
    Bonjour à tous
    Je progresse dans l'univers php

    Voila je genere actuellement un tableau avec un nombre de lignes qui peut atteindre 200... c'est variables car je parse un fichier et fonction du nombre d'infos.. je peux afficher entre 50 et 200 lignes.

    Comment rajouter à mon programme un truc intelligent pour dire par exemple j'affiche les 50 premiers et le reste via "Pages: 1, 2, 3, 4, 5, etc.."

    Merci pour votre aide

  2. #2
    Expert éminent sénior
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Points : 16 545
    Points
    16 545
    Billets dans le blog
    12
    Par défaut
    Salut,

    pagination classique, il y a des tonnes de docs sur le net même sur DVP par ici.
    Faut juste rafraîchir un peu le code au goût du jour et hop le tour est joué.

  3. #3
    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
    La subtilité par rapport aux systèmes de pagination classiques, c'est que tu n'as pas une base de données comme source, mais un fichier.
    Donc il va falloir que tu comptes le nombre de lignes présentes dans le fichier et que tu filtres les lignes avant la 1ere ligne à lire.

    Si ton fichier fait une taille raisonnable, tu peux carrément le lire intégralement en utilisant file qui va te charger l'ensemble des lignes dans un tableau. Tu pourras ensuite utiliser count et array_​slice pour lire les bonnes données.

    Si ton fichier est vraiment gros, il va falloir y aller à la main: lire le fichier ligne à ligne dans son intégralité pour avoir le nombre de lignes (attention à ne pas conserver les lignes en mémoire) et lire le fichier ligne à ligne jusqu'à la dernière ligne à afficher (toujours sans garder en mémoire les lignes qui ne t'intéressent pas)

  4. #4
    Expert éminent sénior
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Points : 16 545
    Points
    16 545
    Billets dans le blog
    12
    Par défaut
    Une règle définie pour les fichiers d'échange texte qui est bien utile c'est d'inclure le nombre de ligne de données dans le nom du fichier, nombre déterminé par l'outil de génération du fichier.
    Souvent je demande que la première valeur numérique rencontrée dans le nom du fichier corresponde, en fait, au nombre de lignes échangé hors en-tête.

    C'est très pratique.

    Pour les cas où un utilisateur renommerait le fichier, la valeur numérique est encodée et un CRC est déterminé. Si cela ne passe pas la vérification d'intégrité, alors on bascule en lecture séquentielle.

  5. #5
    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
    @rawsrc : J'ai travaillé avec un format de fichier de ce type : la 1ere et la dernière ligne contenaient des informations du type "date de génération du fichier", un numéro de fichier (unique) et le nombre de lignes de données (sans compter les deux lignes d'informations) Et c'est vrai qu'il est pratique de pouvoir vérifier si l'intégrité du fichier est ok (et aussi si le fichier que tu regardes est bien le celui de la bonne date )

  6. #6
    Membre à l'essai
    Homme Profil pro
    Padawan PHP
    Inscrit en
    Mars 2018
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Padawan PHP

    Informations forums :
    Inscription : Mars 2018
    Messages : 17
    Points : 11
    Points
    11
    Par défaut
    Oui c'est bien un fichier et non une base de donnée

    OK pour compter le nombre d'éléments

Discussions similaires

  1. [VBS] Fonction qui compte le nombre de lignes dans un fichier texte
    Par ProgElecT dans le forum Vos Contributions VBScript
    Réponses: 0
    Dernier message: 03/05/2012, 14h48
  2. Réponses: 2
    Dernier message: 14/04/2011, 13h19
  3. Réponses: 4
    Dernier message: 21/12/2009, 12h12
  4. [Fichier] Nombre de ligne dans un fichier texte
    Par NewSer dans le forum Entrée/Sortie
    Réponses: 7
    Dernier message: 10/11/2004, 17h58
  5. Réponses: 2
    Dernier message: 02/03/2004, 20h38

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