Ne pas afficher une variable si elle a la même valeur ...
Randaxhe
-
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
Bonsoir à tous,
Je m'arrache les cheveux afin de trouver le moyen de mettre en page de façon plus claire le résultat de ma requête.
Y a-t-il un moyen de ne pas répéter l'affichage d'une variable si elle est = à l'entrée précédente ?
En résumé, le résultat de ma requête sql s'affiche comme ceci :
Et j’aimerais pouvoir l’afficher comme cela :
Y a-t-il un moyen de faire cela ?
D'avance, merci
PS : désolé pour l'affichage, les tableaux se sont écrasés lors de la validation....Mais vous comprendrez, j'en suis sûr !
Je m'arrache les cheveux afin de trouver le moyen de mettre en page de façon plus claire le résultat de ma requête.
Y a-t-il un moyen de ne pas répéter l'affichage d'une variable si elle est = à l'entrée précédente ?
En résumé, le résultat de ma requête sql s'affiche comme ceci :
+- - - - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - + | Europe | Belgique | Bruxelles | +- - - - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - + | Europe | Belgique | Liège | +- - - - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - + | Europe | Belgique | Namur | +- - - - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - + | Europe | Belgique | Charleroi | +- - - - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - + | Europe | France | Paris | +- - - - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - + | Europe | France | Lilles | +- - - - - - - - - - - + - - - - - - - - - - + -- - - - - - - - - + | Europe | France | Dijon | +- - - - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - + | Europe | France | Marseille | +- - - - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - +
Et j’aimerais pouvoir l’afficher comme cela :
+- - - - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - + | Europe | Belgique | Bruxelles | +- - - - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - + | | | Liège | +- - - - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - + | | | Namur | +- - - - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - + | | | Charleroi | +- - - - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - + | | France | Paris | +- - - - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - + | | | Lilles | +- - - - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - + | | | Dijon | +- - - - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - + | | | Marseille | +- - - - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - +
Y a-t-il un moyen de faire cela ?
D'avance, merci
PS : désolé pour l'affichage, les tableaux se sont écrasés lors de la validation....Mais vous comprendrez, j'en suis sûr !
A voir également:
- Ne pas afficher une variable si elle a la même valeur ...
- Afficher appdata - Guide
- Faites afficher avec un fond coloré les cellules qui contiennent une valeur comprise entre 250 et 350. - Forum VB / VBA
- Mise en forme conditionnelle "compris entre" ✓ - Forum Excel
- Cette valeur ne correspond pas aux restrictions de validation des données pour cette cellule ✓ - Forum MacOS
- Formule excel si contient texte alors valeur ✓ - Forum Excel
3 réponses
Un tout grand merci pour ta solution que je vais adopter certainement...
La nuit portant conseil, j'ai tout de même trouvé ceci ce matin qui fonctionne :
La nuit portant conseil, j'ai tout de même trouvé ceci ce matin qui fonctionne :
<?php $i=0; if($rowAllRencontres_ID != null): foreach($rowAllRencontres_ID as $r): ?> <div class="row"> <div class="col-md-2"> <?php if($i>0){ if($rowAllRencontres_ID[$i-1]->Date_Match!=$r->Date_Match){echo $r->Date_Match;} else {echo ' ';} } else echo $r->Date_Match; ?> </div> <div class="col-md-2"><?php echo $r->Lieu_Match; ?></div> <div class="col-md-3"><?php echo $r->Rencontre_Match; ?></div> </div> <?php $i++; endforeach; endif; ?>
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
1 584
Mon approche permet plus facilement de traiter les ruptures de séquences sur plusieurs colonnes, par exemple s'assurer que le lieu est affiché quand la date change, même si le lieu ne change pas.
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonjour,
cela me semble possible.
peux-tu partager ton code PHP, pour que nous puissions suggérer comment l'adapter?
quand tu partages du code, merci d'utiliser les balises: https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
cela me semble possible.
peux-tu partager ton code PHP, pour que nous puissions suggérer comment l'adapter?
quand tu partages du code, merci d'utiliser les balises: https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Je suis dans Codeigniter, voici les lignes de code :
1. La requête :
2. L'affichage :
Il s'agit d'un calendrier de matchs ...et non de villes (que j'avais pris comme illustration !)
Donc, dans ce cas-ci, tant que la date est la même -> ne pas le répéter ...
Et dans cette même date, tant que le lieu est le même -> ne pas le répéter non plus !
Ce qui simplifie nettement la lecture du calendrier...
1. La requête :
function get_all_Matchs($id) { $this->db->select('*'); $this->db->from('Table_Matchs'); $this->db->where('Competition_ID',$id); $this->db->order_by('Table_Matchs.Date_Match','ASC'); $q = $this->db->get(); if($q->num_rows()>0) { foreach($q->result() as $row) { $data[] = $row; } return $data; } }
2. L'affichage :
<?php if($rowAllRencontres_ID != null): foreach($rowAllRencontres_ID as $r): ?> <div class="row"> <div class="col-md-2"><?php echo $r->Date_Match; ?></div> <div class="col-md-2"><?php echo $r->Lieu_Match; ?></div> <div class="col-md-3"><?php echo $r->Rencontre_Match; ?></div> </div> <?php endforeach; endif; ?>
Il s'agit d'un calendrier de matchs ...et non de villes (que j'avais pris comme illustration !)
Donc, dans ce cas-ci, tant que la date est la même -> ne pas le répéter ...
Et dans cette même date, tant que le lieu est le même -> ne pas le répéter non plus !
Ce qui simplifie nettement la lecture du calendrier...
L'idée générale, c'est de mémoriser la valeur du dernier élément affiché, et, si la valeur courante est identique, de ne pas l'afficher.
Donc, tu mémorises l'ancienne valeur de $r->Date_Match. Si la nouvelle valeur est identique à l'ancienne, tu n'affiches rien.
Sinon, tu affiches et mémorises la nouvelle.
Donc, tu mémorises l'ancienne valeur de $r->Date_Match. Si la nouvelle valeur est identique à l'ancienne, tu n'affiches rien.
Sinon, tu affiches et mémorises la nouvelle.