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 :

Filtre javascript des Années dates depuis entête tableau


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur du Dimanche
    Inscrit en
    Juillet 2014
    Messages
    147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur du Dimanche
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2014
    Messages : 147
    Par défaut Filtre javascript des Années dates depuis entête tableau
    Bonjour,

    Je me permets de vous rejoindre sur ce forum car je rencontre une difficulté d'affichage
    en décroissant ou croissant (voir ci-dessous) de dates, en effet il prend en compte dans
    l'ordre d'affichage que les jours et pas les années.

    soit:
    01/02/2020
    03/02/1997
    15/05/2000

    alors que je souhaiterais afficher :
    03/02/1997
    15/05/2000
    01/02/2020

    Étant donné que les dates dans PHP MyAdmin sont au format yyyy-mm-dd j'ai inséré ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <td data-table-header="Formation initiale" style="width:7%;"><?php 
                                      $old_date = Date_create($row['Formation_initiale']);
                                $new_date = Date_format($old_date, "d/m/Y");
                                      echo $new_date;?></td>
    Merci pour votre aide , bonne journée.

  2. #2
    Membre chevronné Avatar de ma5t3r
    Homme Profil pro
    Développeur freelance
    Inscrit en
    Mai 2015
    Messages
    320
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2015
    Messages : 320
    Par défaut
    Salut,
    je pense que ton problème doit se régler en amont, dans ta requête.

    Il suffit de SELECT les données avec un ORDER BY sur la date avec le bon suffixe

  3. #3
    Membre confirmé
    Homme Profil pro
    Développeur du Dimanche
    Inscrit en
    Juillet 2014
    Messages
    147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur du Dimanche
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2014
    Messages : 147
    Par défaut
    Salut ma5t3r,
    et merci pour ta réponse... Seulement l'affichage et le filtrage se font en javascript.
    Pour l'affichage j'ai ajouter "order": [[ 11, "desc" ]], (pour la 11ème colonne) l'affichage
    se fait bien décroissant lorsque la page est chargée seulement le filtrage non lors du clic
    sur l'intitulé de la colonne date, il filtre par jour 01 puis 02, 03, ...




    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
         <script type="text/javascript">
     
     
         	$(document).ready(function() {
      	 	$("#tablesorter").DataTable({
            "scrollY": "2000px",
    	"scrollCollapse": true,
    	"paging": true,
            "pageLength": 100,
            "lengthMenu": [ 50, 100, 150, 200 ],
        	"order": [[ 11, "desc" ]],
            "columnDefs":  [],
     
     
    language: {
            processing:     "Traitement en cours...",
            search:         "Rechercher&nbsp;:",
            lengthMenu:    "Afficher _MENU_ &eacute;l&eacute;ments",
            info:           "Affichage de l'&eacute;lement _START_ &agrave; _END_ sur _TOTAL_ &eacute;l&eacute;ments",
            infoEmpty:      "Affichage de l'&eacute;lement 0 &agrave; 0 sur 0 &eacute;l&eacute;ments",
            infoFiltered:   "(filtr&eacute; de _MAX_ &eacute;l&eacute;ments au total)",
            infoPostFix:    "",
            loadingRecords: "Chargement en cours...",
            zeroRecords:    "Aucun &eacute;l&eacute;ment &agrave; afficher",
            emptyTable:     "Aucune donnée disponible dans le tableau",
            paginate: {
                first:      "Premier",
                previous:   "Pr&eacute;c&eacute;dent",
                next:       "Suivant",
                last:       "Dernier"
            },
            aria: {
                sortAscending:  ": activer pour trier la colonne par ordre croissant",
                sortDescending: ": activer pour trier la colonne par ordre décroissant"
    			}
    		}
     
       });
    $('.dataTables_length').addClass('bs-select');
    });
     
     
          </script>

  4. #4
    Membre chevronné Avatar de ma5t3r
    Homme Profil pro
    Développeur freelance
    Inscrit en
    Mai 2015
    Messages
    320
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2015
    Messages : 320
    Par défaut
    Salut,
    fallait dire que ton souci concerne une datatable jQuery.

    Par défaut, datatable gère les dates avec un format "Y-m-d", si tu veux pouvoir faire de l'order by sur un format français, il faut faire le tri sur une valeur au bon format.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
                columnDefs: [
                    { type: 'date-eu', targets: 11 },
                ],
    Il faut télécharger ce plugin https://datatables.net/plug-ins/sorting/date-eu

  5. #5
    Membre confirmé
    Homme Profil pro
    Développeur du Dimanche
    Inscrit en
    Juillet 2014
    Messages
    147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur du Dimanche
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2014
    Messages : 147
    Par défaut
    Merci de ton aide mais ceci ne change rien il filtre par jour et pas par année.
    Est-ce que ça ne vient pas de l'import dans PhpMyadmin du format Date
    de la cellule du fichier calc?

  6. #6
    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 : 41
    Localisation : France

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    La colonne en base est de type date ? ou string ? est-ce que si tu fais un affichage avec un tri directement dans PhpMyAdmin tu obtiens bien l'ordre attendu ?
    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]

Discussions similaires

  1. Javascript des années Funk et doctype
    Par karpe dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 01/02/2010, 18h18
  2. Formatage des dates depuis Excel
    Par ruzakruzak dans le forum SQL
    Réponses: 2
    Dernier message: 13/10/2008, 17h45
  3. Filtre sur l'année d'une Date
    Par souminet dans le forum Paradox
    Réponses: 6
    Dernier message: 12/05/2008, 16h34
  4. [MySQL] Importer des valeurs "date" depuis fichier csv
    Par all42 dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 27/05/2007, 10h23
  5. Créer date depuis Année/Semaine/JourSem
    Par milka dans le forum Oracle
    Réponses: 8
    Dernier message: 23/11/2006, 14h31

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