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 :

Afficher une seule ligne et éviter les duplication


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    Ergonome
    Inscrit en
    Août 2014
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ergonome

    Informations forums :
    Inscription : Août 2014
    Messages : 52
    Par défaut Afficher une seule ligne et éviter les duplication
    Bonjour,

    Je cherche à afficher une seule ligne avec des données de ma table mysql et, en bouclant, afficher une autre ligne et ainsi de suite. En gros, dans un premier temps, j'affiche tous les matériels qui ont été réservé. Et, en fonction d'une condition de disponibilité, je veux remplacer certains matériels. Par ex, j'ai le matos n°34 qui est non dispo alors je veux le remplacer par un autre matériel de la même famille qui lui est dispo. Je réussi à faire ma condition de dispo, je réussi à appeler tous les matos de la même famille, mais c'est à l'affichage que je n'arrive pas à m'en sortir...

    Pour le moment, cela m'affiche tous les matos de la meme famille qui est dispo.

    Mais ce que je veux faire c'est :
    - imaginons que les matos 1, 2, 3, et 4 sont de la même famille.
    - les matos 1 et 2 sont pas dispos
    - je veux donc les remplacer par les matos 3 et 4.
    - pour le moment j'arrive à afficher toute la liste donc les matos 3 et 4 au dessus de la ligne 1 et les matos 3 et 4 de nouveau, au dessus de la ligne 2.....

    Comment faire pour afficher par exemple le 3 pour le 1 et le 4 pour le 2. ?

    Merci pour votre aide !

    Le code qui correspond à la requete pour aller chercher les matos de la même famille et les afficher (tous du coup) :


    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
    44
     
                          if (($data2->disponibilite == "pas dispo") and ($data['Multiple'] == "Non"))
                          {
                              $rendu = "non";
                              $sql_remplacement = "select m2.IdCpt,
                                     m2.NomMat,
                                     case when not exists (select null from table_resa t where t.id_materiel = m2.IdCpt) then 'dispo'
                                          when exists (select null from table_resa t
                                                    where t.id_materiel = m2.IdCpt
                                                      and (:date_demprunt between t.date_d and t.date_r
                                                           or :date_deretour between t.date_d and t.date_r
                                                           or t.date_d between :date_demprunt and :date_deretour
                                                           or t.date_r between :date_demprunt and :date_deretour
                                                           or t.rendu = :rendu
                                                          )
                                                          )
                                          then 'pas dispo'
                                          else 'dispo'
                                      end as disponibilite               
                              from materiel m2
                              where m2.IdFam = :idfam ORDER BY disponibilite,IdCpt ";
                              $requete_remplacement = $bdd->prepare($sql_remplacement);
                              $requete_remplacement->execute(array("idfam"=>$data['IdFam'], "date_demprunt"=>$date_depart2->format('Y-m-d'), "date_deretour"=>$date_retour2->format('Y-m-d'), "rendu"=>$rendu));
                              //$row3 = $requete_remplacement->fetchAll(PDO::FETCH_ASSOC);
     
     
                              while($data3 = $requete_remplacement->fetch(PDO::FETCH_OBJ))
                              {
                                if (($data2->disponibilite == "pas dispo") and ($data3->disponibilite == "dispo"))
                                {
     
                                      echo '<tr id="'.$data['id_materiel'].'-'.$date_depart2->format('Y-m-d').'" style="background:green;"><td>';
                                      echo ''.$date_depart2->format('d-m-Y').' - '.$date_depart2->format('H:i').'';
                                      echo '</td><td>';
                                      echo ''.$date_retour2->format('d-m-Y').' - '.$date_retour2->format('H:i').'';
                                      echo '</td><td>';
                                      echo $data3->IdCpt;  
                                      echo '</td><td>';
                                      echo $data3->disponibilite;
                                      echo '</td></tr>';
     
                                }                          
                              } //while  data3
                          }//if pas dispo, matos de rempla

  2. #2
    Membre averti
    Homme Profil pro
    Webmaster
    Inscrit en
    Avril 2016
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2016
    Messages : 22
    Par défaut empty
    Bonjour,si j'ai compris
    en php avec empty
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (empty($matos1)){$matos1=$matos3;}
    mais en mysql ce serait beaucoup mieux

Discussions similaires

  1. [XL-2007] sélectionner une seule ligne et avoir les 65 lignes précédentes
    Par Melanie7 dans le forum Excel
    Réponses: 5
    Dernier message: 27/12/2018, 13h52
  2. comment afficher une seul ligne sur un texte
    Par MR-SMOOT dans le forum Shell et commandes GNU
    Réponses: 7
    Dernier message: 03/08/2014, 17h08
  3. [XL-2010] ComboBox Affiche une seule ligne !
    Par kotihc dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 03/07/2014, 08h50
  4. Afficher une seule ligne d'un champ Blob
    Par hammag dans le forum Langage
    Réponses: 1
    Dernier message: 10/06/2009, 17h23
  5. Réponses: 23
    Dernier message: 20/05/2009, 12h47

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