HTML CSS MYSQL PHP
Résolu
deep_sea
Messages postés
215
Statut
Membre
-
deep_sea Messages postés 215 Statut Membre -
deep_sea Messages postés 215 Statut Membre -
bonjour ,
j'ai envie d'afficher dans un tableau pour chaque employé les équipements qui lui sont affecté
exemple
Employé xx
-PC
-Dique dure
-Imprimante
Employé yy
-Fax
-Scanner
-Ordinateur de bureau
mon problème les équipements s'affichent mais a chaque fois le nom de employé se répète au nombre des équipements qui sont affecté
exemple :
xx
-PC
xx
-Disque dure
xx
-Imprimante
donc ma question ou le problème au niveau des css ou bien HTML ou bien l'affichage
j'ai envie d'afficher dans un tableau pour chaque employé les équipements qui lui sont affecté
exemple
Employé xx
-PC
-Dique dure
-Imprimante
Employé yy
-Fax
-Scanner
-Ordinateur de bureau
mon problème les équipements s'affichent mais a chaque fois le nom de employé se répète au nombre des équipements qui sont affecté
exemple :
xx
-PC
xx
-Disque dure
xx
-Imprimante
donc ma question ou le problème au niveau des css ou bien HTML ou bien l'affichage
<table class="table table-hover" id="task-table" border=1>
<thead>
<tr style="" >
<th Style="font-family:Times; font-style: italic; font-size: 15px;text-align:center">Désignation </th>
<th Style="font-family:Times; font-style: italic; font-size: 15px;text-align:center">Quantité</th>
<th Style="font-family:Times; font-style: italic; font-size: 15px;text-align:center">Code équipement</th>
</tr>
</thead>
<tbody>
<?php
$requete="SELECT `equipement`.`code_equip`,`quantite`,`equipement`.`designation_sous_categorie`,`designation_marque`, `Nom_emp`,`Prenom_emp`,`serie` FROM `sous_categorie` INNER JOIN `equipement` INNER JOIN `equip_affect_emp` INNER JOIN `employé` ON `sous_categorie`.`designation_sous_categorie`=`equipement`.`designation_sous_categorie` AND `equipement`.`code_equip`=`equip_affect_emp`.`code_equip` AND `equip_affect_emp`.`Id_emp`=`employé`.`Id_emp` WHERE `sous_categorie`.`id_categorie`=3 order by `Nom_emp`";
$resultat = $conn->query($requete) or die ('Erreur '.$requete.' '.$conn->error);
while($row = mysqli_fetch_assoc($resultat))
{
echo '
<tr> <td colspan=12 style="background-color: #808080">'.$row['Nom_emp'].' '.$row['Prenom_emp'].' </td></tr>
<td>'.$row['designation_sous_categorie'].' '.$row['designation_marque'].' '.$row['serie'].' </td>
<td>'.$row['quantite'].' </td>
<td>'.$row['code_equip'].' </td>';
}
?>
</tbody>
</table>
1 réponse
-
Bonjour,
Une première solution serait d'utiliser un IF pour vérifier si le nom précédent correspond au nom actuel. Si tel est le cas... ne pas le réafficher.
Une autre solution est de reconstruire un array un peu mieux ordonné
par exemple :$requete="SELECT `equipement`.`code_equip`,`quantite`, `equipement`.`designation_sous_categorie`, `designation_marque`, `Nom_emp`, `Prenom_emp`, `serie` FROM `sous_categorie` INNER JOIN `equipement` INNER JOIN `equip_affect_emp` INNER JOIN `employé` ON `sous_categorie`.`designation_sous_categorie`=`equipement`.`designation_sous_categorie` AND `equipement`.`code_equip`=`equip_affect_emp`.`code_equip` AND `equip_affect_emp`.`Id_emp`=`employé`.`Id_emp` WHERE `sous_categorie`.`id_categorie`=3 ORDER BY `Nom_emp`"; if(!$resultat = $conn->query($requete)){ die ('Erreur '.$requete.' '.$conn->error); } //On commence par recréer un Array contenant les informations mieux ordonnées... $aUserMat = array(); while($row = mysqli_fetch_assoc($resultat)) { $aUserMat[$row['Nom_emp'].' '.$row['Prenom_emp']] = array('designation_sous_categorie'=>$row['designation_sous_categorie'], 'designation_marque'=>$row['designation_marque'], 'serie'=>$row['serie'], 'quantite'=>$row['quantite'] 'code_equip'=>$row['code_equip']); } //on utilise cet array pour générer l'affichage foreach($aUserMat as $User=>$aMat){ echo '<tr> <td colspan="12" style="background-color: #808080">'.$User.' </td> </tr>'; foreach($aMat as $mat){ echo '<tr> <td>'.$mat['designation_sous_categorie'].' '.$mat['designation_marque'].' '.$mat['serie'].' </td> <td>'.$mat['quantite'].' </td> <td>'.$mat['code_equip'].' </td> </tr>'; } }
Au passage, je t'invite vivement à lire ceci :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
.
-
Merci car le nom s'affiche une fois , mais pleins d'érreur
Warning: Illegal string offset 'designation_sous_categorie' in C:\Program Files (x86)\EasyPHP-DevServer-14.1VC9\data\localweb\projects\bst_gestion\BST\liste_inforrmatique.php on line 84 Warning: Illegal string offset 'designation_marque' in C:\Program Files (x86)\EasyPHP-DevServer-14.1VC9\data\localweb\projects\bst_gestion\BST\liste_inforrmatique.php on line 84 Warning: Illegal string offset 'serie' in C:\Program Files (x86)\EasyPHP-DevServer-14.1VC9\data\localweb\projects\bst_gestion\BST\liste_inforrmatique.php on line 84 Warning: Illegal string offset 'quantite' in C:\Program Files (x86)\EasyPHP-DevServer-14.1VC9\data\localweb\projects\bst_gestion\BST\liste_inforrmatique.php on line 85 Warning: Illegal string offset 'code_equip' in C:\Program Files (x86)\EasyPHP-DevServer-14.1VC9\data\localweb\projects\bst_gestion\BST\liste_inforrmatique.php on line 86
-
-
-
Encore une fois... si ton souci est résolu... pense à le clore.
Comment ça se fait qu'à chacune de tes questions je doive te le rappeler ??
Merci d'y penser par toi même...
https://www.commentcamarche.net/infos/25917-marquer-un-fil-de-discussion-comme-etant-resolu/
. -
-